[rdkb][common][hal][Add free to alloc memory]
[Description]
Add free to alloc memory.
[Release-log]
N/A
Change-Id: I3d1ba39c347957ab9769b061140efdbec260fd3c
diff --git a/src/wifi/wifi_hal.c b/src/wifi/wifi_hal.c
index 3ca99b9..b239e98 100644
--- a/src/wifi/wifi_hal.c
+++ b/src/wifi/wifi_hal.c
@@ -11465,12 +11465,14 @@
int maxNumberColors = 64;
BOOL color_is_aval = FALSE;
- color_list = calloc(maxNumberColors, sizeof(UCHAR));
- if (wifi_getAvailableBSSColor(radio_index, maxNumberColors, color_list, &color_num) != RETURN_OK)
+ if (color > 63)
return RETURN_ERR;
- if (color > 63)
+ color_list = calloc(maxNumberColors, sizeof(UCHAR));
+ if (wifi_getAvailableBSSColor(radio_index, maxNumberColors, color_list, &color_num) != RETURN_OK) {
+ free(color_list);
return RETURN_ERR;
+ }
for (int i = 0; i < color_num; i++) {
if (color_list[i] == color) {
@@ -11479,6 +11481,7 @@
}
}
if (color_is_aval == FALSE) {
+ free(color_list);
fprintf(stderr, "%s: color %hhu is not avaliable.\n", __func__, color);
return RETURN_ERR;
}
@@ -11491,6 +11494,7 @@
wifi_hostapdProcessUpdate(radio_index, ¶ms, 1);
wifi_reloadAp(radio_index);
+ free(color_list);
WIFI_ENTRY_EXIT_DEBUG("Exiting %s:%d\n",__func__, __LINE__);
return RETURN_OK;
}