(*discovery_info)->manufacturer_data_len = source_info->manufacturer_data.data_len;
if ((*discovery_info)->manufacturer_data_len > 0) {
(*discovery_info)->manufacturer_data = malloc(source_info->manufacturer_data.data_len);
- memcpy((*discovery_info)->manufacturer_data, source_info->manufacturer_data.data, source_info->manufacturer_data.data_len);
+ if ((*discovery_info)->manufacturer_data)
+ memcpy((*discovery_info)->manufacturer_data, source_info->manufacturer_data.data, source_info->manufacturer_data.data_len);
+ else
+ return BT_ERROR_OUT_OF_MEMORY;
} else {
(*discovery_info)->manufacturer_data = NULL;
}
(*scan_info)->adv_data_len = source_info->adv_ind_data.data_len;
if ((*scan_info)->adv_data_len > 0) {
(*scan_info)->adv_data = malloc(source_info->adv_ind_data.data_len);
- memcpy((*scan_info)->adv_data, source_info->adv_ind_data.data.data, source_info->adv_ind_data.data_len);
+ if ((*scan_info)->adv_data)
+ memcpy((*scan_info)->adv_data, source_info->adv_ind_data.data.data, source_info->adv_ind_data.data_len);
+ else
+ return BT_ERROR_OUT_OF_MEMORY;
} else {
(*scan_info)->adv_data = NULL; /* LCOV_EXCL_LINE */
}
(*scan_info)->scan_data_len = source_info->scan_resp_data.data_len;
if ((*scan_info)->scan_data_len > 0) {
(*scan_info)->scan_data = malloc(source_info->scan_resp_data.data_len); /* LCOV_EXCL_LINE */
- memcpy((*scan_info)->scan_data, source_info->scan_resp_data.data.data, source_info->scan_resp_data.data_len); /* LCOV_EXCL_LINE */
+ if ((*scan_info)->scan_data)
+ memcpy((*scan_info)->scan_data, source_info->scan_resp_data.data.data, source_info->scan_resp_data.data_len); /* LCOV_EXCL_LINE */
+ else
+ return BT_ERROR_OUT_OF_MEMORY;
} else {
(*scan_info)->scan_data = NULL;
}
if ((*scan_info)->legacy_scan_result->adv_data_len > 0) {
(*scan_info)->legacy_scan_result->adv_data = malloc(source_info->adv_ind_data.data_len);
- memcpy((*scan_info)->legacy_scan_result->adv_data, source_info->adv_ind_data.data.data, source_info->adv_ind_data.data_len);
+ if ((*scan_info)->legacy_scan_result->adv_data)
+ memcpy((*scan_info)->legacy_scan_result->adv_data, source_info->adv_ind_data.data.data, source_info->adv_ind_data.data_len);
+ else
+ return BT_ERROR_OUT_OF_MEMORY;
} else {
(*scan_info)->legacy_scan_result->adv_data = NULL; /* LCOV_EXCL_LINE */
}
(*scan_info)->legacy_scan_result->scan_data_len = source_info->scan_resp_data.data_len;
if ((*scan_info)->legacy_scan_result->scan_data_len > 0) {
(*scan_info)->legacy_scan_result->scan_data = malloc(source_info->scan_resp_data.data_len); /* LCOV_EXCL_LINE */
- memcpy((*scan_info)->legacy_scan_result->scan_data, source_info->scan_resp_data.data.data, source_info->scan_resp_data.data_len); /* LCOV_EXCL_LINE */
+ if ((*scan_info)->legacy_scan_result->scan_data)
+ memcpy((*scan_info)->legacy_scan_result->scan_data, source_info->scan_resp_data.data.data, source_info->scan_resp_data.data_len); /* LCOV_EXCL_LINE */
+ else
+ return BT_ERROR_OUT_OF_MEMORY;
} else {
(*scan_info)->legacy_scan_result->scan_data = NULL;
}