Fixed settings crash issue while recovering from phone crash.

Bug: 18816868
Change-Id: I2b3015f563aed2d997a3a5466ca8f0689fc53ddb
This commit is contained in:
Sanket Padawe
2014-12-22 10:33:49 -08:00
parent 19627ca215
commit 79d5da7bf6

View File

@@ -87,23 +87,27 @@ public class SimDialogActivity extends Activity {
final Context context = getApplicationContext(); final Context context = getApplicationContext();
final SubscriptionInfo sir = Utils.findRecordBySlotId(context, slotId); final SubscriptionInfo sir = Utils.findRecordBySlotId(context, slotId);
if (sir != null) {
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this); AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);
alertDialogBuilder.setTitle(R.string.sim_preferred_title); alertDialogBuilder.setTitle(R.string.sim_preferred_title);
alertDialogBuilder.setMessage(res.getString( alertDialogBuilder.setMessage(res.getString(
R.string.sim_preferred_message, sir.getDisplayName())); R.string.sim_preferred_message, sir.getDisplayName()));
alertDialogBuilder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() { alertDialogBuilder.setPositiveButton(R.string.yes, new
DialogInterface.OnClickListener() {
@Override @Override
public void onClick(DialogInterface dialog, int id) { public void onClick(DialogInterface dialog, int id) {
final int subId = sir.getSubscriptionId(); final int subId = sir.getSubscriptionId();
PhoneAccountHandle phoneAccountHandle = subscriptionIdToPhoneAccountHandle(subId); PhoneAccountHandle phoneAccountHandle =
subscriptionIdToPhoneAccountHandle(subId);
setDefaultDataSubId(context, subId); setDefaultDataSubId(context, subId);
setDefaultSmsSubId(context, subId); setDefaultSmsSubId(context, subId);
setUserSelectedOutgoingPhoneAccount(phoneAccountHandle); setUserSelectedOutgoingPhoneAccount(phoneAccountHandle);
finish(); finish();
} }
}); });
alertDialogBuilder.setNegativeButton(R.string.no, new DialogInterface.OnClickListener() { alertDialogBuilder.setNegativeButton(R.string.no, new
DialogInterface.OnClickListener() {
@Override @Override
public void onClick(DialogInterface dialog,int id) { public void onClick(DialogInterface dialog,int id) {
finish(); finish();
@@ -111,6 +115,9 @@ public class SimDialogActivity extends Activity {
}); });
alertDialogBuilder.create().show(); alertDialogBuilder.create().show();
} else {
finish();
}
} }
private static void setDefaultDataSubId(final Context context, final int subId) { private static void setDefaultDataSubId(final Context context, final int subId) {