[feature] set msd interface modify 3

Change-Id: Iadc8f955c1ca4c8f423fa755540a2aed94eeb6af
diff --git a/lib/liblynq-call/lynq_call.cpp b/lib/liblynq-call/lynq_call.cpp
index 1605fc3..08c5e0f 100755
--- a/lib/liblynq-call/lynq_call.cpp
+++ b/lib/liblynq-call/lynq_call.cpp
@@ -1195,17 +1195,18 @@
     int lynq_call_id = -1;

     RIL_ECall_Variant ril_ecall_variant = lynq_get_ril_ecall_variant_from_lynq_variant (lynq_ecall_variant);

     RIL_ECall_Category ril_ecall_cat = lynq_get_ril_ecall_cat_from_lynq_cat(lynq_ecall_cat);

+    char lynq_msd_data[MSD_MAX_LENGTH*2+1]={0};

+    unsigned int i;

 

     if(msd_length > MSD_MAX_LENGTH)

     {

         LYERRLOG("msd_length %d is greater than %d, parameter error\n",msd_length,MSD_MAX_LENGTH);

         return -1;

     }    

-    char* lynq_msd_data[MSD_MAX_LENGTH*2+1]={0};

 

-    for(int i =0; i<msd_length;i++)

+    for(i =0; i<msd_length;i++)

     {

-        sprintf(lynq_msd_data[i<<1],"%02x",msd_data[i]);

+        sprintf(&(lynq_msd_data[i<<1]),"%02x",msd_data[i]);

     }    

 

     lynq_call_id = updateAddr(e_call_addr[lynq_ecall_variant]);

@@ -1287,16 +1288,18 @@
 

 int lynq_set_msd(int* handle, const unsigned char *msd_data, int msd_length)

 {

+    char lynq_msd_data[MSD_MAX_LENGTH*2+1]={0};

+    unsigned int i;

+

     if(handle==NULL || ((*handle) >= LYNQ_CALL_MAX) || msd_length > MSD_MAX_LENGTH)

     {

         LYERRLOG("handle is NULL or *handle %d is greater or equeal to %d or msd_length %d is greater than %d, parameter error\n",*handle,LYNQ_CALL_MAX,msd_length,MSD_MAX_LENGTH);

         return -1;

     }    

-    char* lynq_msd_data[MSD_MAX_LENGTH*2+1]={0};

 

-    for(int i =0; i<msd_length;i++)

+    for(i=0; i<msd_length;i++)

     {

-        sprintf(lynq_msd_data[i<<1],"%02x",msd_data[i]);

+        sprintf(&(lynq_msd_data[i<<1]),"%02x",msd_data[i]);

     }    

 

     return lynq_set_common_request(RIL_REQUEST_ECALL_SET_MSD,2,"%d %s",lynq_call_lists[(*handle)].call_id,lynq_msd_data);