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

Commit 10dd834b authored by Hui Wang's avatar Hui Wang Committed by Automerger Merge Worker
Browse files

Transit to inactive state when starting handover failed am: 3cb2f68b

Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/telephony/+/1765087

Change-Id: Ifc3556cf08188efdae9e40f134f09c28e3150bee
parents e73f1edf 3cb2f68b
Loading
Loading
Loading
Loading
+13 −6
Original line number Diff line number Diff line
@@ -1008,6 +1008,12 @@ public class DataConnection extends StateMachine {
        }
    }

    private void onRquestHandoverFailed(ConnectionParams cp) {
        sendMessage(obtainMessage(EVENT_CANCEL_HANDOVER));
        notifyConnectCompleted(cp, DataFailCause.UNKNOWN,
                    DataCallResponse.HANDOVER_FAILURE_MODE_UNKNOWN, false);
    }

    private void requestHandover(boolean inCorrectState, DataConnection srcDc,
            @DataServiceCallback.ResultCode int resultCode,
            ConnectionParams cp, Message msg, DataProfile dp, boolean isModemRoaming,
@@ -1025,8 +1031,7 @@ public class DataConnection extends StateMachine {
                            + "srcdc = null");
                }
            }
            notifyConnectCompleted(cp, DataFailCause.UNKNOWN,
                    DataCallResponse.HANDOVER_FAILURE_MODE_UNKNOWN, false);
            onRquestHandoverFailed(cp);
            return;
        } else if (!isResultCodeSuccess(resultCode)) {
            if (DBG) {
@@ -1034,8 +1039,7 @@ public class DataConnection extends StateMachine {
                        + "setupDataCall will not be called, result code = "
                        + DataServiceCallback.resultCodeToString(resultCode));
            }
            notifyConnectCompleted(cp, DataFailCause.UNKNOWN,
                    DataCallResponse.HANDOVER_FAILURE_MODE_UNKNOWN, false);
            onRquestHandoverFailed(cp);
            return;
        }

@@ -1060,8 +1064,7 @@ public class DataConnection extends StateMachine {
        if (linkProperties == null || linkProperties.getLinkAddresses().isEmpty()) {
            loge("requestHandover: Can't find link properties of handover data connection. dc="
                    + srcDc);
            notifyConnectCompleted(cp, DataFailCause.UNKNOWN,
                    DataCallResponse.HANDOVER_FAILURE_MODE_UNKNOWN, false);
            onRquestHandoverFailed(cp);
            return;
        }

@@ -2722,6 +2725,10 @@ public class DataConnection extends StateMachine {
                    ((Consumer<Boolean>) msg.obj).accept(true /* is in correct state*/);
                    retVal = HANDLED;
                    break;
                case EVENT_CANCEL_HANDOVER:
                    transitionTo(mInactiveState);
                    retVal = HANDLED;
                    break;
                default:
                    if (VDBG) {
                        log("DcActivatingState not handled msg.what=" +