From 5f75f5ef716ca1c9fef786b95bf3a1a25f0f1f3e Mon Sep 17 00:00:00 2001 From: Jason Monk Date: Wed, 27 Jan 2016 11:33:34 -0500 Subject: Fix multi-sim cell data pref ? Bug: 26795856 Change-Id: I82e18c21d819d51712a65ccc37e4e3af9a006771 --- src/com/android/settings/datausage/CellDataPreference.java | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'src/com/android') diff --git a/src/com/android/settings/datausage/CellDataPreference.java b/src/com/android/settings/datausage/CellDataPreference.java index 73699d6837..fa333f1a1c 100644 --- a/src/com/android/settings/datausage/CellDataPreference.java +++ b/src/com/android/settings/datausage/CellDataPreference.java @@ -182,7 +182,7 @@ public class CellDataPreference extends CustomDialogPreference implements Templa setMobileDataEnabled(true); if (nextSir != null && currentSir != null && currentSir.getSubscriptionId() == nextSir.getSubscriptionId()) { - disableDataForOtherSubscriptions(currentSir); + disableDataForOtherSubscriptions(mSubId); } return; } @@ -193,14 +193,15 @@ public class CellDataPreference extends CustomDialogPreference implements Templa builder.setTitle(R.string.sim_change_data_title); builder.setMessage(getContext().getString(R.string.sim_change_data_message, - currentSir.getDisplayName(), previousName)); + String.valueOf(currentSir != null ? currentSir.getDisplayName() : null), + previousName)); builder.setPositiveButton(R.string.okay, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int id) { - mSubscriptionManager.setDefaultDataSubId(currentSir.getSubscriptionId()); + mSubscriptionManager.setDefaultDataSubId(mSubId); setMobileDataEnabled(true); - disableDataForOtherSubscriptions(currentSir); + disableDataForOtherSubscriptions(mSubId); } }); builder.setNegativeButton(R.string.cancel, null); @@ -208,11 +209,11 @@ public class CellDataPreference extends CustomDialogPreference implements Templa builder.create().show(); } - private void disableDataForOtherSubscriptions(SubscriptionInfo currentSir) { + private void disableDataForOtherSubscriptions(int subId) { List subInfoList = mSubscriptionManager.getActiveSubscriptionInfoList(); if (subInfoList != null) { for (SubscriptionInfo subInfo : subInfoList) { - if (subInfo.getSubscriptionId() != currentSir.getSubscriptionId()) { + if (subInfo.getSubscriptionId() != subId) { mTelephonyManager.setDataEnabled(subInfo.getSubscriptionId(), false); } } -- cgit v1.2.3