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

Commit cef5739a authored by Cassie's avatar Cassie Committed by android-build-merger
Browse files

Merge "Stop and abort network scan if modem resets."

am: b2731d87

Change-Id: I5a7d0dc69f7f1dd8d547b5cbf2b976c3d734433c
parents 369f2d87 b2731d87
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -66,10 +66,12 @@ public final class NetworkScanRequestTracker {
    private static final int EVENT_STOP_NETWORK_SCAN_DONE = 5;
    private static final int CMD_INTERRUPT_NETWORK_SCAN = 6;
    private static final int EVENT_INTERRUPT_NETWORK_SCAN_DONE = 7;
    private static final int EVENT_MODEM_RESET = 8;

    private final Handler mHandler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            Log.d(TAG, "Received Event :" + msg.what);
            switch (msg.what) {
                case CMD_START_NETWORK_SCAN:
                    mScheduler.doStartScan((NetworkScanRequestInfo) msg.obj);
@@ -98,6 +100,14 @@ public final class NetworkScanRequestTracker {
                case EVENT_INTERRUPT_NETWORK_SCAN_DONE:
                    mScheduler.interruptScanDone((AsyncResult) msg.obj);
                    break;

                case EVENT_MODEM_RESET:
                    AsyncResult ar = (AsyncResult) msg.obj;
                    mScheduler.deleteScanAndMayNotify(
                            (NetworkScanRequestInfo) ar.userObj,
                            NetworkScan.ERROR_MODEM_ERROR,
                            true);
                    break;
            }
        }
    };
@@ -551,6 +561,7 @@ public final class NetworkScanRequestTracker {
                mLiveRequestInfo = nsri;
                nsri.mPhone.startNetworkScan(nsri.getRequest(),
                        mHandler.obtainMessage(EVENT_START_NETWORK_SCAN_DONE, nsri));
                nsri.mPhone.mCi.registerForModemReset(mHandler, EVENT_MODEM_RESET, nsri);
                return true;
            }
            return false;
@@ -570,6 +581,7 @@ public final class NetworkScanRequestTracker {
                                null);
                    }
                }
                mLiveRequestInfo.mPhone.mCi.unregisterForModemReset(mHandler);
                mLiveRequestInfo = null;
                if (mPendingRequestInfo != null) {
                    startNewScan(mPendingRequestInfo);