[Bugfix][T108-GSW][bug-view-1717] gsw modem state monitor doesn't work

    Only Configure: No
    Affected branch: unknown
    Affected module: network
    Is it affected on both ZXIC and ASR: only ASR
    Self-test: yes
    Doc Update: no

Change-Id: I16471282a8ffd5a9a5c8a4b297d056146bc8312f
diff --git a/mbtk/include/mbtk/mbtk_info_api.h b/mbtk/include/mbtk/mbtk_info_api.h
index c2dfde5..583ddb0 100755
--- a/mbtk/include/mbtk/mbtk_info_api.h
+++ b/mbtk/include/mbtk/mbtk_info_api.h
@@ -39,8 +39,19 @@
 #define MBTK_APN_PASSWORD_SIZE 127+1

 #define MBTK_APN_TYPE_SIZE 127+1

 

+#define MBTK_READY_UCI "persist.mbtk.sdk.state"

+#define MBTK_READY_STRING_SIZE_MAX (3+1)

 

 

+typedef enum{

+    MBTK_READY_INIT = -1,

+    MBTK_READY_SUCCESS,

+    MBTK_READY_MODEM_FAIL,

+    MBTK_READY_RESPONSE_FAIL,

+    MBTK_READY_SOCKET_FAIL,

+    MBTK_READY_RIL_FAIL

+}mbtk_ready_status_type;

+

 typedef void (*mbtk_info_callback_func)(const void* data, int data_len);

 

 typedef enum {

diff --git a/mbtk/libmbtk_lib/ril/v1/mbtk_info_api.c b/mbtk/libmbtk_lib/ril/v1/mbtk_info_api.c
index 6082367..489e0ac 100644
--- a/mbtk/libmbtk_lib/ril/v1/mbtk_info_api.c
+++ b/mbtk/libmbtk_lib/ril/v1/mbtk_info_api.c
@@ -422,8 +422,16 @@
     pthread_mutex_lock(&handle->mutex);
     handle->is_waitting = true;
 
-    mbtk_info_pack_send(handle->client_fd, pack);
+    int ret=mbtk_info_pack_send(handle->client_fd, pack);
     mbtk_info_pack_free(&pack);
+    if(ret<0)
+    {
+        LOG("pack_send error, ret is %d",ret);
+        handle->info_err=MBTK_INFO_ERR_TIMEOUT;
+        handle->is_waitting = false;
+        pthread_mutex_unlock(&handle->mutex);
+        return -1;
+    }
 
     if(recv_buff != NULL)
         handle->data = recv_buff;
diff --git a/mbtk/mbtk_sdk_ready/src/main.c b/mbtk/mbtk_sdk_ready/src/main.c
index c1ab041..127684a 100755
--- a/mbtk/mbtk_sdk_ready/src/main.c
+++ b/mbtk/mbtk_sdk_ready/src/main.c
@@ -19,14 +19,6 @@
 #define NORMAL_CHECK_TIME 30000   //30s
 #define PERIOD_LEN 10
 int in_period[PERIOD_LEN] = {100,100,200,200,500,500,500,500,2000,5000};//ms
-typedef enum{
-    MBTK_READY_INIT = -1,
-    MBTK_READY_SUCCESS,
-    MBTK_READY_MODEM_FAIL,
-    MBTK_READY_RESPONSE_FAIL,
-    MBTK_READY_SOCKET_FAIL,
-    MBTK_READY_RIL_FAIL
-}mbtk_ready_status_type;
 
 static mbtk_ready_status_type mbtk_ready_status = MBTK_READY_INIT;
 static mbtk_info_handle_t* mbtk_handle = NULL;
@@ -75,9 +67,9 @@
     UNUSED(arg);
     LOGE("[SDK_READY] sdk_ready_check_pthread entry.");
     mbtk_ready_status_type now_ready_status = MBTK_READY_INIT;
-    char buf[2] = {0};
+    char buf[MBTK_READY_STRING_SIZE_MAX] = {0};
     buf[0] = '0' + now_ready_status;
-    property_set("persist.mbtk.sdk.state", buf);// init state value
+    property_set(MBTK_READY_UCI, buf);// init state value
     int sleep_time = 30;
     long uptime = 0;
     int count = 0;
@@ -87,7 +79,7 @@
         if(now_ready_status != mbtk_ready_status)
         {
             buf[0] = '0' + now_ready_status;
-            property_set("persist.mbtk.sdk.state", buf);
+            property_set(MBTK_READY_UCI, buf);
             mbtk_ready_status = now_ready_status;
         }
         uptime = get_uptime();
@@ -172,4 +164,4 @@
     LOGE("[SDK_READY]!!!mbtk_sdk_ready exit!!!");
     return MBTK_RESULT_SUCCESS;
 }
-#endif
+#endif
\ No newline at end of file