am a2e1cebe: Merge "Fix fallback for emergency calls" into lmp-mr1-dev

* commit 'a2e1cebe4b42dc4b4188d0d916bfcee468a77ac5':
  Fix fallback for emergency calls
diff --git a/src/com/android/server/telecom/Call.java b/src/com/android/server/telecom/Call.java
index 3e66426..d3eddb5 100644
--- a/src/com/android/server/telecom/Call.java
+++ b/src/com/android/server/telecom/Call.java
@@ -392,7 +392,18 @@
     void setState(int newState) {
         if (mState != newState) {
             Log.v(this, "setState %s -> %s", mState, newState);
-            int oldState = mState;
+
+            if (newState == CallState.DISCONNECTED
+                    && (mState == CallState.DIALING || mState == CallState.CONNECTING)
+                    && mCreateConnectionProcessor != null
+                    && mCreateConnectionProcessor.isProcessingComplete()
+                    && mCreateConnectionProcessor.hasMorePhoneAccounts()
+                    && mDisconnectCause != null
+                    && mDisconnectCause.getCode() == DisconnectCause.ERROR) {
+                mCreateConnectionProcessor.continueProcessingIfPossible(this, mDisconnectCause);
+                return;
+            }
+
             mState = newState;
             maybeLoadCannedSmsResponses();
 
@@ -410,14 +421,6 @@
                 mDisconnectTimeMillis = System.currentTimeMillis();
                 setLocallyDisconnecting(false);
                 fixParentAfterDisconnect();
-                if ((oldState == CallState.DIALING || oldState == CallState.CONNECTING)
-                        && mCreateConnectionProcessor != null
-                        && mCreateConnectionProcessor.isProcessingComplete()
-                        && mCreateConnectionProcessor.hasMorePhoneAccounts()
-                        && mDisconnectCause != null
-                        && mDisconnectCause.getCode() == DisconnectCause.ERROR) {
-                    mCreateConnectionProcessor.continueProcessingIfPossible(this, mDisconnectCause);
-                }
             }
         }
     }