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

Commit b3d49f15 authored by Jaikumar Ganesh's avatar Jaikumar Ganesh
Browse files

Fix Disconnect path for CDMA.

The corresponding fix has already been made for GSM.
When data state is in CONNECTING state and and we try
to disable the data, we set a pending disconnect but never
disconnect once we are connected.
parent bb7b7b31
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -146,12 +146,16 @@ public class CdmaDataConnection extends DataConnection {
                null, obtainMessage(EVENT_SETUP_DATA_CONNECTION_DONE));
    }

    protected void disconnect(Message msg) {
        onDisconnect = msg;
        if (state == State.ACTIVE) {
    private void tearDownData(Message msg) {
        if (phone.mCM.getRadioState().isOn()) {
            phone.mCM.deactivateDataCall(cid, obtainMessage(EVENT_DEACTIVATE_DONE, msg));
        }
    }

    protected void disconnect(Message msg) {
        onDisconnect = msg;
        if (state == State.ACTIVE) {
            tearDownData(msg);
        } else if (state == State.ACTIVATING) {
            receivedDisconnectReq = true;
        } else {
@@ -280,7 +284,7 @@ public class CdmaDataConnection extends DataConnection {
                // Don't bother reporting success if there's already a
                // pending disconnect request, since DataConnectionTracker
                // has already updated its state.
                disconnect(onDisconnect);
                tearDownData(onDisconnect);
            } else {
                String[] response = ((String[]) ar.result);
                cid = Integer.parseInt(response[0]);