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

Commit c9a55d1e authored by Amit Mahajan's avatar Amit Mahajan
Browse files

Change to read carrier specific config only after reading IMSI.

This is to make sure we decide to use language settings from SIM
(which is controlled by a carrier specific config) only after
the mcc-mnc is known.

Bug: 22255379
Change-Id: I1e0491e9ed01fa27bcb32d6f3708e091a0e25cb5
parent 6791ced4
Loading
Loading
Loading
Loading
+11 −10
Original line number Diff line number Diff line
@@ -782,7 +782,11 @@ public final class RuimRecords extends IccRecords {
            }
        }

        Resources resource = Resources.getSystem();
        if (resource.getBoolean(com.android.internal.R.bool.config_use_sim_language_file)) {
            setSimLanguage(mEFli, mEFpl);
        }

        mRecordsLoadedRegistrants.notifyRegistrants(
            new AsyncResult(null, null, null));

@@ -818,8 +822,6 @@ public final class RuimRecords extends IccRecords {
                obtainMessage(EVENT_GET_ICCID_DONE));
        mRecordsToLoad++;

        Resources resource = Resources.getSystem();
        if (resource.getBoolean(com.android.internal.R.bool.config_use_sim_language_file)) {
        mFh.loadEFTransparent(EF_PL,
                obtainMessage(EVENT_GET_ICC_RECORD_DONE, new EfPlLoaded()));
        mRecordsToLoad++;
@@ -827,7 +829,6 @@ public final class RuimRecords extends IccRecords {
        mFh.loadEFTransparent(EF_CSIM_LI,
                obtainMessage(EVENT_GET_ICC_RECORD_DONE, new EfCsimLiLoaded()));
        mRecordsToLoad++;
        }

        mFh.loadEFTransparent(EF_CSIM_SPN,
                obtainMessage(EVENT_GET_ICC_RECORD_DONE, new EfCsimSpnLoaded()));
+6 −7
Original line number Diff line number Diff line
@@ -1438,7 +1438,12 @@ public class SIMRecords extends IccRecords {
    protected void onAllRecordsLoaded() {
        if (DBG) log("record load complete");

        Resources resource = Resources.getSystem();
        if (resource.getBoolean(com.android.internal.R.bool.config_use_sim_language_file)) {
            setSimLanguage(mEfLi, mEfPl);
        } else {
            if (DBG) log ("Not using EF LI/EF PL");
        }

        if (mParentApp.getState() == AppState.APPSTATE_PIN ||
               mParentApp.getState() == AppState.APPSTATE_PUK) {
@@ -1509,12 +1514,6 @@ public class SIMRecords extends IccRecords {
    }

    private void loadEfLiAndEfPl() {
        Resources resource = Resources.getSystem();
        if (!resource.getBoolean(com.android.internal.R.bool.config_use_sim_language_file)) {
            if (DBG) log ("Not using EF LI/EF PL");
            return;
        }

        if (mParentApp.getType() == AppType.APPTYPE_USIM) {
            mRecordsRequested = true;
            mFh.loadEFTransparent(EF_LI,