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

Commit 22c37563 authored by Shuo Qian's avatar Shuo Qian Committed by sqian
Browse files

If signal is lost, do not update the empty country iso for other slots

EmergencyNumberTracker shares the emergency country iso from multiple slots, it updates non-empty country iso for other slots if they don't have a network country, but it doesn't need / should not update empty country iso for other slots.

Test: atest EmergencyNumberTrackerTest
Bug: 179299344
Change-Id: I29efd0031f26fa94731b12d9865f1ab44a5ebd75
Merged-In: I29efd0031f26fa94731b12d9865f1ab44a5ebd75
(cherry picked from commit bb4cd887)
parent 201b7876
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -296,6 +296,8 @@ public class EmergencyNumberTracker extends Handler {
            EmergencyNumberTracker emergencyNumberTracker;
            if (phone != null && phone.getEmergencyNumberTracker() != null) {
                emergencyNumberTracker = phone.getEmergencyNumberTracker();
                // If signal is lost, do not update the empty country iso for other slots.
                if (!TextUtils.isEmpty(countryIso)) {
                    if (TextUtils.isEmpty(emergencyNumberTracker.getEmergencyCountryIso())
                            || emergencyNumberTracker.mIsCountrySetByAnotherSub) {
                        emergencyNumberTracker.mIsCountrySetByAnotherSub = true;
@@ -305,6 +307,7 @@ public class EmergencyNumberTracker extends Handler {
                }
            }
        }
    }

    private void onCarrierConfigChanged() {
        if (mPhone != null) {
+1 −1
Original line number Diff line number Diff line
@@ -265,7 +265,7 @@ public class EmergencyNumberTrackerTest extends TelephonyTest {
        processAllMessages();
        assertTrue(mEmergencyNumberTrackerMock.getEmergencyCountryIso().equals(""));
        assertTrue(mEmergencyNumberTrackerMock.getLastKnownEmergencyCountryIso().equals("jp"));
        assertTrue(mEmergencyNumberTrackerMock2.getEmergencyCountryIso().equals(""));
        assertTrue(mEmergencyNumberTrackerMock2.getEmergencyCountryIso().equals("jp"));
        assertTrue(mEmergencyNumberTrackerMock2.getLastKnownEmergencyCountryIso().equals("jp"));
    }