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

Commit f1911ab8 authored by Ye Jingjing's avatar Ye Jingjing Committed by Johan Redestig
Browse files

Update PS state when radio off or unavailable

When radio off or unavailable, CS state has been reset,
but PS state has not updated, in fact both CS and PS
state should be out of service. So SMS will try to be
sent out when sending sms, the result is "could not send"
rather than sms being queued for sending.
This fix will reset PS state to power off or out of
service when radio off or unavailable accordingly.

Bug: 8265430
Change-Id: I46e962c30021ff1273dcc559579bdedc7f432a64
parent de707749
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -223,6 +223,7 @@ public class CdmaLteServiceStateTracker extends CdmaServiceStateTracker {
        switch (cm.getRadioState()) {
            case RADIO_UNAVAILABLE:
                newSS.setStateOutOfService();
                mLteSS.setStateOutOfService();
                newCellLoc.setStateInvalid();
                setSignalStrengthDefaultValues();
                mGotCountryCode = false;
@@ -232,6 +233,7 @@ public class CdmaLteServiceStateTracker extends CdmaServiceStateTracker {

            case RADIO_OFF:
                newSS.setStateOff();
                mLteSS.setStateOff();
                newCellLoc.setStateInvalid();
                setSignalStrengthDefaultValues();
                mGotCountryCode = false;
+2 −0
Original line number Diff line number Diff line
@@ -832,6 +832,7 @@ public class CdmaServiceStateTracker extends ServiceStateTracker {
        switch (cm.getRadioState()) {
        case RADIO_UNAVAILABLE:
            newSS.setStateOutOfService();
            mNewDataConnectionState = ServiceState.STATE_OUT_OF_SERVICE;
            newCellLoc.setStateInvalid();
            setSignalStrengthDefaultValues();
            mGotCountryCode = false;
@@ -841,6 +842,7 @@ public class CdmaServiceStateTracker extends ServiceStateTracker {

        case RADIO_OFF:
            newSS.setStateOff();
            mNewDataConnectionState = ServiceState.STATE_POWER_OFF;
            newCellLoc.setStateInvalid();
            setSignalStrengthDefaultValues();
            mGotCountryCode = false;
+2 −0
Original line number Diff line number Diff line
@@ -745,6 +745,7 @@ final class GsmServiceStateTracker extends ServiceStateTracker {
        switch (cm.getRadioState()) {
            case RADIO_UNAVAILABLE:
                newSS.setStateOutOfService();
                newGPRSState = ServiceState.STATE_OUT_OF_SERVICE;
                newCellLoc.setStateInvalid();
                setSignalStrengthDefaultValues();
                mGotCountryCode = false;
@@ -754,6 +755,7 @@ final class GsmServiceStateTracker extends ServiceStateTracker {

            case RADIO_OFF:
                newSS.setStateOff();
                newGPRSState = ServiceState.STATE_POWER_OFF;
                newCellLoc.setStateInvalid();
                setSignalStrengthDefaultValues();
                mGotCountryCode = false;