Merge "Disallow additional conferencing of full GSM conferences" into lmp-dev
diff --git a/src/com/android/phone/HfaLogic.java b/src/com/android/phone/HfaLogic.java
index e4a3205..b064b18 100644
--- a/src/com/android/phone/HfaLogic.java
+++ b/src/com/android/phone/HfaLogic.java
@@ -71,7 +71,8 @@
     private PendingIntent mResponseIntent;
     private Context mContext;
 
-    private static final int DEFAULT_RETRY_COUNT = 1;
+    // No retry at the moment. Increase later if necessary.
+    private static final int DEFAULT_RETRY_COUNT = 0;
     private int mRetryCount;
 
     public interface HfaLogicCallback {
diff --git a/src/com/android/services/telephony/TelephonyConnection.java b/src/com/android/services/telephony/TelephonyConnection.java
index 20df3e6..9e7589c 100644
--- a/src/com/android/services/telephony/TelephonyConnection.java
+++ b/src/com/android/services/telephony/TelephonyConnection.java
@@ -41,6 +41,7 @@
     private static final int MSG_PRECISE_CALL_STATE_CHANGED = 1;
     private static final int MSG_RINGBACK_TONE = 2;
     private static final int MSG_HANDOVER_STATE_CHANGED = 3;
+    private static final int MSG_DISCONNECT = 4;
 
     private final Handler mHandler = new Handler() {
         @Override
@@ -68,6 +69,9 @@
                     }
                     setRingbackRequested((Boolean) ((AsyncResult) msg.obj).result);
                     break;
+                case MSG_DISCONNECT:
+                    updateState();
+                    break;
             }
         }
     };
@@ -364,6 +368,7 @@
             getPhone().unregisterForPreciseCallStateChanged(mHandler);
             getPhone().unregisterForRingbackTone(mHandler);
             getPhone().unregisterForHandoverStateChanged(mHandler);
+            getPhone().unregisterForDisconnect(mHandler);
         }
         mOriginalConnection = originalConnection;
         getPhone().registerForPreciseCallStateChanged(
@@ -371,6 +376,7 @@
         getPhone().registerForHandoverStateChanged(
                 mHandler, MSG_HANDOVER_STATE_CHANGED, null);
         getPhone().registerForRingbackTone(mHandler, MSG_RINGBACK_TONE, null);
+        getPhone().registerForDisconnect(mHandler, MSG_DISCONNECT, null);
         mOriginalConnection.addPostDialListener(mPostDialListener);
         mOriginalConnection.addListener(mOriginalConnectionListener);