aboutsummaryrefslogtreecommitdiffstats
path: root/src/java/com
diff options
context:
space:
mode:
authorSukanya Rajkhowa <srajkh@codeaurora.org>2015-12-01 17:32:30 -0800
committerSteve Kondik <steve@cyngn.com>2016-05-20 23:09:07 -0700
commitbd4e168b5756ae8a94cb33a5b7cb6f54558a47c4 (patch)
treeebdd065e58b89dd96fb00a02dedeadd1590e89c0 /src/java/com
parentc7fa65984eb1c0c224fd2d491397bb31fe48dd96 (diff)
downloadandroid_frameworks_opt_telephony-bd4e168b5756ae8a94cb33a5b7cb6f54558a47c4.tar.gz
android_frameworks_opt_telephony-bd4e168b5756ae8a94cb33a5b7cb6f54558a47c4.tar.bz2
android_frameworks_opt_telephony-bd4e168b5756ae8a94cb33a5b7cb6f54558a47c4.zip
Reset internet requests when SIM is removed
- When SIM is plugged out in Attached state, data state machine goes from Attached -> Idle state and does not release the requests. As a result, the executed flag of internet network request remains false and ALLOW_DATA true is not sent down when SIM is plugged back in same slot - Fix this by resetting INTERNET network request when SIM is removed. With the fix, when sim is plugged back into the same slot and data attaches, state machine will move correctly from Idle->Attaching CRs-Fixed: 928537 Change-Id: I3ac780f4a7c2114b007107422b3c6cfc7142892e
Diffstat (limited to 'src/java/com')
-rw-r--r--src/java/com/android/internal/telephony/dataconnection/DctController.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/java/com/android/internal/telephony/dataconnection/DctController.java b/src/java/com/android/internal/telephony/dataconnection/DctController.java
index b1899ace2..091633550 100644
--- a/src/java/com/android/internal/telephony/dataconnection/DctController.java
+++ b/src/java/com/android/internal/telephony/dataconnection/DctController.java
@@ -32,6 +32,7 @@ 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;
@@ -568,6 +569,16 @@ public class DctController extends Handler {
for (int i = 0; i < mPhoneNum; ++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");
+ PhoneBase phoneBase = (PhoneBase)mPhones[i].getActivePhone();
+ DcTrackerBase dcTracker = phoneBase.mDcTracker;
+ if (dcTracker.isApnTypeActive(PhoneConstants.APN_TYPE_DEFAULT)) {
+ logd("onSubInfoReady: reset INTERNET request as SIM has been removed");
+ deactivateDdsRequests();
+ }
+ }
mNetworkFilter[i].setNetworkSpecifier(String.valueOf(subId));
((DctController.TelephonyNetworkFactory)mNetworkFactory[i]).evalPendingRequest();
}