Merge "[Bugfix][T106BUG-165][T106BUG-27] fix setsmscenteraddress&getsmscenteraddress error2"
diff --git a/cap/zx297520v3/src/lynq/framework/lynq-ril-service/src/cc.cpp b/cap/zx297520v3/src/lynq/framework/lynq-ril-service/src/cc.cpp
index 50e64ac..cdb28f1 100755
--- a/cap/zx297520v3/src/lynq/framework/lynq-ril-service/src/cc.cpp
+++ b/cap/zx297520v3/src/lynq/framework/lynq-ril-service/src/cc.cpp
@@ -585,7 +585,6 @@
int sendDtmf(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI)
{
RLOGD("lynq this is function:%s,line%d",__FUNCTION__,__LINE__);
- #if LYNQ_CC_SUPPORT
android::Parcel p;
int number;
size_t pos = p.dataPosition();
@@ -610,20 +609,25 @@
writeStringToParcel(p, (const char *)argv[1]);
p.setDataPosition(pos);
-
+
+#ifdef MOBILETEK_TARGET_PLATFORM_T106
+ pRI->pCI->dispatchFunction(p, pRI);
+#else
dtmf_stop(dtmf_handle);
gint time_ms = 500;
if (pRI->pCI->requestNumber == RIL_REQUEST_DTMF_START) {
time_ms = 0;
}
+
RLOGD("request: %d, time_ms = %d", pRI->pCI->requestNumber, time_ms);
dtmf_handle = dtmf_start(number, time_ms, dtmf_volume, NULL);
pRI->pCI->dispatchFunction(p, pRI);
if (dtmf_handle == NULL)
RLOGE("[DTMF] dtmf_start return NULL!");
+
+#endif
+
return 0;
- #endif //LYNQ_CC_SUPPORT
- return 0;//LYNQ_CC_SUPPORT
}
//RIL_REQUEST_UDUB
diff --git a/cap/zx297520v3/src/lynq/framework/lynq-ril-service/src/data/data.cpp b/cap/zx297520v3/src/lynq/framework/lynq-ril-service/src/data/data.cpp
index 673960a..fbeaefe 100755
--- a/cap/zx297520v3/src/lynq/framework/lynq-ril-service/src/data/data.cpp
+++ b/cap/zx297520v3/src/lynq/framework/lynq-ril-service/src/data/data.cpp
@@ -789,6 +789,7 @@
p.writeInt32(0);//status
p.writeInt32(-1);//suggestedRetryTime
p.writeInt32(lynq_apn_cid_table[i].cid);//cid
+ writeStringToParcel(p, lynq_apn_cid_table[i].ifaceName);//ifname
android::LYNQ_RIL_respSocket(p, (void *)pRI);
RLOGD("cid:%d,apn:%s,apntype:%s", lynq_apn_cid_table[i].cid, lynq_apn_cid_table[i].apn, lynq_apn_cid_table[i].apntype);
return -1;
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 975db3a..49363ad 100755
--- a/cap/zx297520v3/src/lynq/lib/liblynq-data/lynq_data.cpp
+++ b/cap/zx297520v3/src/lynq/lib/liblynq-data/lynq_data.cpp
@@ -1116,12 +1116,12 @@
int cid = -1;
int active = -1;
int utoken = -1;
- char ifaceName[LYNQ_IFACE_NAME_MAX_LEN];
- char type[LYNQ_TYPE_MAX_LEN];
- char addresses[LYNQ_ADDRESSES_MAX_LEN];
- char dnses[LYNQ_DNSES_MAX_LEN];
- char gateways[LYNQ_GATEWAYS_MAX_LEN];
- char pcscf[LYNQ_PCSCF_MAX_LEN];
+ char ifaceName[LYNQ_IFACE_NAME_MAX_LEN] = {0};
+ char type[LYNQ_TYPE_MAX_LEN] = {0};
+ char addresses[LYNQ_ADDRESSES_MAX_LEN] = {0};
+ char dnses[LYNQ_DNSES_MAX_LEN] = {0};
+ char gateways[LYNQ_GATEWAYS_MAX_LEN] = {0};
+ char pcscf[LYNQ_PCSCF_MAX_LEN] = {0};
char *tmp_msg = NULL;
int len = 0;
@@ -1197,16 +1197,19 @@
return error;
}
}
-//version != 0 || slot < 0, the cid out of lynq_apn_table, need add a new item
- p.readInt32(&active);
-
- tmp_msg = strdupReadString(p);
- len = strlen(tmp_msg);
- if(len < LYNQ_TYPE_MAX_LEN-1)
+//the cid out of lynq_apn_table, need add a new item
+ if(version != 0)
{
- memcpy(type,tmp_msg,len+1);
+ p.readInt32(&active);
+
+ tmp_msg = strdupReadString(p);
+ len = strlen(tmp_msg);
+ if(len < LYNQ_TYPE_MAX_LEN-1)
+ {
+ memcpy(type,tmp_msg,len+1);
+ }
+ free(tmp_msg);
}
- free(tmp_msg);
tmp_msg = strdupReadString(p);
len = strlen(tmp_msg);
if(len < LYNQ_IFACE_NAME_MAX_LEN-1)
@@ -1232,6 +1235,7 @@
*handle = lynq_data_call_id;
lynq_apn_table[lynq_data_call_id].cid = cid;
memcpy(lynq_apn_table[lynq_data_call_id].ifaceName, ifaceName, strlen(ifaceName) + 1);
+ memcpy(lynq_apn_table[lynq_data_call_id].apn, apn, strlen(apn) + 1);
memcpy(lynq_apn_table[lynq_data_call_id].apnType, apnType, strlen(apnType) + 1);
lynq_apn_table[lynq_data_call_id].hasUsed = 1;
printf_apn_table();