diff options
author | Susheel nyamala <snyamala@codeaurora.org> | 2016-02-24 21:04:51 +0530 |
---|---|---|
committer | Steve Kondik <steve@cyngn.com> | 2016-07-02 10:55:01 -0700 |
commit | 0dbab41dd234c211a7322e5a6f1a794580ecba44 (patch) | |
tree | 51708ca2d7b63b7bc81d2d4b2000d3fd44f7464a | |
parent | 1e4c0b0eeeb3d966c5da4e137b1af09568edc566 (diff) | |
download | android_frameworks_opt_telephony-0dbab41dd234c211a7322e5a6f1a794580ecba44.tar.gz android_frameworks_opt_telephony-0dbab41dd234c211a7322e5a6f1a794580ecba44.tar.bz2 android_frameworks_opt_telephony-0dbab41dd234c211a7322e5a6f1a794580ecba44.zip |
Fix default data reset issue on device powerup
Subinfo null check is leading to default data call reset.
Replace it with sim state check.
Change-Id: I64c255c667e7ed667e004b361c0a68e507b30e5d
CRs-Fixed: 980485
-rw-r--r-- | src/java/com/android/internal/telephony/dataconnection/DctController.java | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/java/com/android/internal/telephony/dataconnection/DctController.java b/src/java/com/android/internal/telephony/dataconnection/DctController.java index e1c8bace5..ea2b2f385 100644 --- a/src/java/com/android/internal/telephony/dataconnection/DctController.java +++ b/src/java/com/android/internal/telephony/dataconnection/DctController.java @@ -32,7 +32,6 @@ import android.os.Message; import android.os.Messenger; import android.provider.Settings; import android.telephony.Rlog; -import android.telephony.SubscriptionInfo; import android.telephony.SubscriptionManager; import android.telephony.SubscriptionManager.OnSubscriptionsChangedListener; import android.text.TextUtils; @@ -45,6 +44,9 @@ import com.android.internal.telephony.PhoneConstants; import com.android.internal.telephony.PhoneProxy; import com.android.internal.telephony.SubscriptionController; import com.android.internal.telephony.dataconnection.DcSwitchAsyncChannel.RequestInfo; +import com.android.internal.telephony.uicc.IccCardStatus; +import com.android.internal.telephony.uicc.UiccCard; +import com.android.internal.telephony.uicc.UiccController; import com.android.internal.util.AsyncChannel; import com.android.internal.util.IndentingPrintWriter; @@ -578,12 +580,14 @@ public class DctController extends Handler { private void onSubInfoReady() { logd("onSubInfoReady mPhoneNum=" + mPhoneNum); + UiccController uiccController = UiccController.getInstance(); for (int i = 0; i < mPhoneNum; ++i) { + UiccCard card = uiccController.getUiccCard(i); int subId = mPhones[i].getSubId(); logd("onSubInfoReady handle pending requests subId=" + subId); - SubscriptionInfo subInfo = mSubMgr.getActiveSubscriptionInfoForSimSlotIndex(i); - if (subInfo == null) { // No sim in slot - logd("onSubInfoReady: subInfo = null"); + if ((card == null) || (card.getCardState() == + IccCardStatus.CardState.CARDSTATE_ABSENT)) { + logd("onSubInfoReady: SIM card absent on phoneId = " + i); PhoneBase phoneBase = (PhoneBase)mPhones[i].getActivePhone(); DcTrackerBase dcTracker = phoneBase.mDcTracker; if (dcTracker.isApnTypeActive(PhoneConstants.APN_TYPE_DEFAULT)) { |