Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a3b98f5d authored by SongFerngWang's avatar SongFerngWang Committed by SongFerng Wang
Browse files

Fix the settings crash when SimDialogActivity is null

The PreferredSimDialogFragment did updateDialog after SimDialogActivity
was finished. It caused the settings crash. This is similar to b/184899699

Bug: 220803944
Test: build pass
Change-Id: I9a5964400a63053e362632944b9e7aa8ec1bbea8
(cherry picked from commit 70bf76a4)
parent 76d6cbc7
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -84,10 +84,11 @@ public class PreferredSimDialogFragment extends SimDialogFragment implements
    private void updateDialog(AlertDialog dialog) {
        Log.d(TAG, "Dialog updated, dismiss status: " + mWasDismissed);

        final SubscriptionInfo info = getPreferredSubscription();
        if (mWasDismissed) {
            return;
        }

        final SubscriptionInfo info = getPreferredSubscription();
        if (info == null) {
            dismiss();
            return;
+6 −0
Original line number Diff line number Diff line
@@ -83,6 +83,12 @@ public abstract class SimDialogFragment extends InstrumentedDialogFragment imple
        }
    }

    @Override
    public void dismiss() {
        mChangeListener.stop();
        super.dismiss();
    }

    public abstract void updateDialog();

    @Override
+4 −3
Original line number Diff line number Diff line
@@ -127,12 +127,13 @@ public class SimListDialogFragment extends SimDialogFragment {
    @Override
    public void updateDialog() {
        Log.d(TAG, "Dialog updated, dismiss status: " + mWasDismissed);
        if (mWasDismissed) {
            return;
        }

        List<SubscriptionInfo> currentSubscriptions = getCurrentSubscriptions();
        if (currentSubscriptions == null) {
            if (!mWasDismissed) {
            dismiss();
            }
            return;
        }
        boolean includeAskEveryTime = getArguments().getBoolean(KEY_INCLUDE_ASK_EVERY_TIME);