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

Commit 011534fd authored by chen xu's avatar chen xu
Browse files

confirm default data sub active before disable data on non-default sub

Bug: 129704827
Test: Manual
Change-Id: I14b4a95bd99d7393f265a34ad99049297a9a45f0
parent 89834a36
Loading
Loading
Loading
Loading
+5 −0
Original line number Original line Diff line number Diff line
@@ -300,6 +300,11 @@ public class MultiSimSettingController {


    private void disableDataForNonDefaultNonOpportunisticSubscriptions() {
    private void disableDataForNonDefaultNonOpportunisticSubscriptions() {
        int defaultDataSub = mSubController.getDefaultDataSubId();
        int defaultDataSub = mSubController.getDefaultDataSubId();
        // Only disable data for non-default subscription if default sub is active.
        if (!mSubController.isActiveSubId(defaultDataSub)) {
            log("default data sub is inactive, skip disabling data for non-default subs");
            return;
        }


        for (Phone phone : mPhones) {
        for (Phone phone : mPhones) {
            if (phone.getSubId() != defaultDataSub
            if (phone.getSubId() != defaultDataSub
+7 −2
Original line number Original line Diff line number Diff line
@@ -614,8 +614,13 @@ public class SubscriptionInfoUpdater extends Handler {
        // TODO investigate if we can update for each slot separately.
        // TODO investigate if we can update for each slot separately.
        if (isAllIccIdQueryDone()) {
        if (isAllIccIdQueryDone()) {
            // Ensure the modems are mapped correctly
            // Ensure the modems are mapped correctly
            if (mSubscriptionManager.isActiveSubId(
                    mSubscriptionManager.getDefaultDataSubscriptionId())) {
                mSubscriptionManager.setDefaultDataSubId(
                mSubscriptionManager.setDefaultDataSubId(
                        mSubscriptionManager.getDefaultDataSubscriptionId());
                        mSubscriptionManager.getDefaultDataSubscriptionId());
            } else {
                logd("bypass reset default data sub if inactive");
            }
            UiccController uiccController = UiccController.getInstance();
            UiccController uiccController = UiccController.getInstance();
            UiccSlot[] uiccSlots = uiccController.getUiccSlots();
            UiccSlot[] uiccSlots = uiccController.getUiccSlots();
            if (uiccSlots != null) {
            if (uiccSlots != null) {