[Bugfix][bug-view-873] Fixed the problem that the handle may be repeated.

Only Configure:No
Affected branch:master
Affected module:DATA
Is it affected on: only ZXIC
Self-test: Yes
Doc Update:No

Change-Id: I7425031006e4520a6dd6a84b5263b87b22b4937e
(cherry picked from commit 8c666182352cbd706fa8b3ce1400352322fd32f1)
diff --git a/cap/zx297520v3/src/lynq/lib/liblynq-data/lynq_data.cpp b/cap/zx297520v3/src/lynq/lib/liblynq-data/lynq_data.cpp
index 6997d18..d212aef 100755
--- a/cap/zx297520v3/src/lynq/lib/liblynq-data/lynq_data.cpp
+++ b/cap/zx297520v3/src/lynq/lib/liblynq-data/lynq_data.cpp
@@ -1566,14 +1566,6 @@
             return LYNQ_E_REPETITIVE_APN;
         }
     }
-    pthread_mutex_lock(&g_lynq_data_sendto_mutex);
-    if(send_request(lynq_client_sockfd,&client)==-1)
-    {
-        LYERRLOG("send request fail");
-        perror("[LYNQ_DATA] send request fail:");
-        pthread_mutex_unlock(&g_lynq_data_sendto_mutex);
-        return -1;
-    }
     //find lynq_data_call_id
     for(lynq_data_call_id = 0; lynq_data_call_id < LYNQ_APN_CHANNEL_MAX; lynq_data_call_id++)
     {
@@ -1585,6 +1577,16 @@
     if (lynq_data_call_id == LYNQ_APN_CHANNEL_MAX)
     {
         LYERRLOG("update apn table fail error id = %d",lynq_data_call_id);
+        return -1;
+    }
+    LYINFLOG("lynq_data_call_id = %d\n", lynq_data_call_id);
+    //ready to send request
+    pthread_mutex_lock(&g_lynq_data_sendto_mutex);
+ 
+    if(send_request(lynq_client_sockfd,&client)==-1)
+    {
+        LYERRLOG("send request fail");
+        perror("[LYNQ_DATA] send request fail:");
         pthread_mutex_unlock(&g_lynq_data_sendto_mutex);
         return -1;
     }