Merge "wifi: Fix for returning wrong radio combinations matrix" into tm-dev am: b51d11fb6d

Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/interfaces/+/17618828

Change-Id: Icf2efa7605fee6f99fb7a1217215ca124c28920b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Sunil Ravi
2022-04-07 03:16:24 +00:00
committed by Automerger Merge Worker

View File

@@ -1549,13 +1549,14 @@ wifi_error WifiLegacyHal::setIndoorState(bool isIndoor) {
std::pair<wifi_error, wifi_radio_combination_matrix*>
WifiLegacyHal::getSupportedRadioCombinationsMatrix() {
std::array<char, kMaxSupportedRadioCombinationsMatrixLength> buffer;
buffer.fill(0);
char* buffer = new char[kMaxSupportedRadioCombinationsMatrixLength];
std::fill(buffer, buffer + kMaxSupportedRadioCombinationsMatrixLength, 0);
uint32_t size = 0;
wifi_radio_combination_matrix* radio_combination_matrix_ptr =
reinterpret_cast<wifi_radio_combination_matrix*>(buffer.data());
reinterpret_cast<wifi_radio_combination_matrix*>(buffer);
wifi_error status = global_func_table_.wifi_get_supported_radio_combinations_matrix(
global_handle_, buffer.size(), &size, radio_combination_matrix_ptr);
global_handle_, kMaxSupportedRadioCombinationsMatrixLength, &size,
radio_combination_matrix_ptr);
CHECK(size >= 0 && size <= kMaxSupportedRadioCombinationsMatrixLength);
return {status, radio_combination_matrix_ptr};
}