[Bugfix][API-932][API-933][wifi] fix memory leak of lynq_get_connect_ap_rssi
Change-Id: Ic2b9a04658761e2c6674791ccc8631aef1a0179f
diff --git a/lib/liblynq-wifi6/libwifi6.c b/lib/liblynq-wifi6/libwifi6.c
index 39314d2..45a957d 100755
--- a/lib/liblynq-wifi6/libwifi6.c
+++ b/lib/liblynq-wifi6/libwifi6.c
@@ -3106,24 +3106,16 @@
// *rssi = atoi(split_words[1]) * -1;
- FILE *fp;
- size_t i = 0;
char lynq_cmd_ret[MAX_RET]={0};
-// CHECK_IDX(idx, CTRL_AP);
/*******change other cmd to get rssi*******
*
*wl rssi ---> wl -i wlan0 rssi
*
***** change by qs.xiong 20221011*******/
- if((fp=popen("wl -i wlan0 rssi","r"))==NULL)
+ if (0 != exec_cmd("wl -i wlan0 rssi", lynq_cmd_ret, MAX_RET))
{
- perror("popen error!");
- return -1;
- }
- if((fread(lynq_cmd_ret,sizeof(lynq_cmd_ret),1,fp))<0)
- {
- perror("fread fail!");
+ RLOGE("[lynq_get_connect_ap_rssi] exec cmd [ wl -i wlan0 rssi ] fail");
return -1;
}
*rssi = atoi(lynq_cmd_ret) * -1;
@@ -3131,7 +3123,7 @@
if(*rssi == 0)
{
RLOGE("[lynq_get_connect_ap_rssi]sta didn't connected any ap device,please check connection\n");
- return -1;
+ return -1;
}
return 0;