Merge "Merge "Fixed NullPointerException" am: 5fb16be925 am: cbe5bbdcd5 am: 456b2bf87b am: b301288cd7 am: 036496e2d0" into rvc-dev
diff --git a/src/com/android/settings/IccLockSettings.java b/src/com/android/settings/IccLockSettings.java
index a9b496a..4340039 100644
--- a/src/com/android/settings/IccLockSettings.java
+++ b/src/com/android/settings/IccLockSettings.java
@@ -31,6 +31,7 @@
import android.os.PersistableBundle;
import android.telephony.CarrierConfigManager;
import android.telephony.SubscriptionInfo;
+import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
import android.util.Log;
@@ -231,13 +232,16 @@
for (int i = 0; i < numSims; ++i) {
final SubscriptionInfo subInfo =
getActiveSubscriptionInfoForSimSlotIndex(subInfoList, i);
- final CarrierConfigManager carrierConfigManager = getContext().getSystemService(
- CarrierConfigManager.class);
- final PersistableBundle bundle = carrierConfigManager.getConfigForSubId(
- subInfo.getSubscriptionId());
- if (bundle != null
- && !bundle.getBoolean(CarrierConfigManager.KEY_HIDE_SIM_LOCK_SETTINGS_BOOL)) {
- componenterList.add(subInfo);
+ if (subInfo != null) {
+ final CarrierConfigManager carrierConfigManager = getContext().getSystemService(
+ CarrierConfigManager.class);
+ final PersistableBundle bundle = carrierConfigManager.getConfigForSubId(
+ subInfo.getSubscriptionId());
+ if (bundle != null
+ && !bundle.getBoolean(CarrierConfigManager
+ .KEY_HIDE_SIM_LOCK_SETTINGS_BOOL)) {
+ componenterList.add(subInfo);
+ }
}
}
@@ -292,7 +296,8 @@
final List<SubscriptionInfo> subInfoList =
mProxySubscriptionMgr.getActiveSubscriptionsInfo();
final SubscriptionInfo sir = getActiveSubscriptionInfoForSimSlotIndex(subInfoList, mSlotId);
- mSubId = sir.getSubscriptionId();
+ mSubId = (sir == null) ? SubscriptionManager.INVALID_SUBSCRIPTION_ID
+ : sir.getSubscriptionId();
if (mPinDialog != null) {
mPinDialog.setEnabled(sir != null);
@@ -679,8 +684,6 @@
@Override
public void onTabChanged(String tabId) {
mSlotId = Integer.parseInt(tabId);
- final SubscriptionInfo sir = getActiveSubscriptionInfoForSimSlotIndex(
- mProxySubscriptionMgr.getActiveSubscriptionsInfo(), mSlotId);
// The User has changed tab; update the body.
updatePreferences();