[BugFix][API-1574]fix api get cmd repaly error
Affected branch:MR3.0-xx && GSW3.0
Affected module:wifi
Is it addected on both ZXIC and MTK: only MTK
Self-test: YES
Doc Update: No
Change-Id: I49efc7bca1cf790c2228d67224b19944027c8a72
diff --git a/IC_src/mtk/lib/liblynq-wifi6/libwifi6.c b/IC_src/mtk/lib/liblynq-wifi6/libwifi6.c
index dbc9ef1..29b9fd5 100755
--- a/IC_src/mtk/lib/liblynq-wifi6/libwifi6.c
+++ b/IC_src/mtk/lib/liblynq-wifi6/libwifi6.c
@@ -104,6 +104,8 @@
static pthread_mutex_t s_check_wpa_ctrl_mutex = PTHREAD_MUTEX_INITIALIZER;
static pthread_mutex_t s_sta_callback_mutex = PTHREAD_MUTEX_INITIALIZER;
static pthread_mutex_t s_ap_callback_mutex = PTHREAD_MUTEX_INITIALIZER;
+static pthread_mutex_t s_run_cmd_func_mutex = PTHREAD_MUTEX_INITIALIZER;
+
// add for auto connect
static pthread_mutex_t s_sta_auto_callback_mutex = PTHREAD_MUTEX_INITIALIZER;
@@ -390,14 +392,18 @@
}while(0)
#define DO_OK_FAIL_REQUEST(cmd_str) do { \
+ pthread_mutex_lock(&s_run_cmd_func_mutex); \
DO_REQUEST(cmd_str); \
if (reply_len >=4 && memcmp(cmd_reply, "FAIL", 4) == 0 ) {\
RLOGE("cmd "#cmd_str" return FAIL\n"); \
+ pthread_mutex_unlock(&s_run_cmd_func_mutex); \
return -1; \
} else if (reply_len >=2 && memcmp(cmd_reply, "OK", 2) != 0) { \
RLOGE("cmd "#cmd_str" return not OK|FAIL\n"); \
+ pthread_mutex_unlock(&s_run_cmd_func_mutex); \
return -1; \
} \
+ pthread_mutex_unlock(&s_run_cmd_func_mutex); \
}while (0)