Fix def dns for cid 1.
Change-Id: I29f312e74b4d79b05d567ab7808f1fc6e53d69be
diff --git a/mbtk/mbtk_rild_v2/src/ril_data_call.c b/mbtk/mbtk_rild_v2/src/ril_data_call.c
index 05f6db9..d5e1da4 100755
--- a/mbtk/mbtk_rild_v2/src/ril_data_call.c
+++ b/mbtk/mbtk_rild_v2/src/ril_data_call.c
@@ -786,7 +786,7 @@
{
char prop_name[20] = {0};
char prop_data[1024] = {0};
- int ret = -1;
+ int ret = 0;
if(apn->auto_save) {
// auto_boot_call must be 0 for CID 1.
if(apn->cid == MBTK_RIL_CID_1) {
@@ -874,7 +874,20 @@
|| data_info->as_dns != MBTK_DATA_CALL_ITEM_STATE_NON) {
mbtk_apn_info_t apn;
if(apn_prop_get_by_cid(data_info->cid, &apn)) {
- return -1;
+ if(data_info->cid == MBTK_RIL_CID_1) {
+ memset(&apn, 0, sizeof(mbtk_apn_info_t));
+ if(data_info->auto_boot_call != MBTK_DATA_CALL_ITEM_STATE_NON)
+ apn.auto_boot_call = (data_info->auto_boot_call == MBTK_DATA_CALL_ITEM_STATE_ENABLE) ? 1 : 0;
+
+ if(data_info->def_route != MBTK_DATA_CALL_ITEM_STATE_NON)
+ apn.def_route = (data_info->def_route == MBTK_DATA_CALL_ITEM_STATE_ENABLE) ? 1 : 0;
+
+ if(data_info->as_dns != MBTK_DATA_CALL_ITEM_STATE_NON)
+ apn.as_dns = (data_info->as_dns == MBTK_DATA_CALL_ITEM_STATE_ENABLE) ? 1 : 0;
+ return apn_prop_set(&apn);
+ } else {
+ return -1;
+ }
} else {
if(data_info->auto_boot_call != MBTK_DATA_CALL_ITEM_STATE_NON)
apn.auto_boot_call = (data_info->auto_boot_call == MBTK_DATA_CALL_ITEM_STATE_ENABLE) ? 1 : 0;