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

Commit 654c7722 authored by fionaxu's avatar fionaxu Committed by android-build-team Robot
Browse files

add NullPointerCheck for serviceStateTracker

ServiceStateTracker is not created inside GsmCdmaPhone, thus there is no
SST inside SipPhone. Add a null pointer check inside CarrierActionAgent.
In the long term we should move CarrierActionSignal and
CarrierSignalAgent from Phone to GsmCdmaPhone

Bug: 64104240
Test: Manaul test by making a SIP call
Change-Id: Ia48ff128c9656446058816043cc825a1f60c8a20
(cherry picked from commit 5ddb6ec3)
parent ba0f0a30
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -152,14 +152,18 @@ public class CarrierActionAgent extends Handler {
                    mSettingsObserver.observe(
                            Settings.Global.getUriFor(Settings.Global.AIRPLANE_MODE_ON),
                            EVENT_APM_SETTINGS_CHANGED);
                    if (mPhone.getServiceStateTracker() != null) {
                        mPhone.getServiceStateTracker().registerForDataRoamingOff(
                                this, EVENT_DATA_ROAMING_OFF, null, false);
                    }
                } else if (IccCardConstants.INTENT_VALUE_ICC_ABSENT.equals(iccState)) {
                    log("EVENT_SIM_STATE_CHANGED status: " + iccState);
                    carrierActionReset();
                    mSettingsObserver.unobserve();
                    if (mPhone.getServiceStateTracker() != null) {
                        mPhone.getServiceStateTracker().unregisterForDataRoamingOff(this);
                    }
                }
                break;
            default:
                loge("Unknown carrier action: " + msg.what);
+1 −1
Original line number Diff line number Diff line
@@ -104,7 +104,7 @@ public class CarrierActionAgentTest extends TelephonyTest {
        intent.putExtra(IccCardConstants.INTENT_KEY_ICC_STATE,
                IccCardConstants.INTENT_VALUE_ICC_LOADED);
        mContext.sendBroadcast(intent);
        waitForMs(100);
        waitForMs(200);

        // carrier actions triggered from sim loading
        ArgumentCaptor<Message> message = ArgumentCaptor.forClass(Message.class);