Merge remote-tracking branch 'origin/LA.QSSI.11.0.R1.11.00.00.668.170.00' into fp4t-target-0414
diff --git a/src/com/android/server/telecom/Call.java b/src/com/android/server/telecom/Call.java
index ef0f8e3..f2833bc 100755
--- a/src/com/android/server/telecom/Call.java
+++ b/src/com/android/server/telecom/Call.java
@@ -2259,6 +2259,8 @@
setLocallyDisconnecting(true);
maybeSetCallAsDisconnectingChild();
+ maybeSetChildCallAsDisconnecting();
+
if (mState == CallState.NEW || mState == CallState.SELECT_PHONE_ACCOUNT ||
mState == CallState.CONNECTING) {
Log.v(this, "Aborting call %s", this);
@@ -2286,6 +2288,14 @@
}
}
+ private void maybeSetChildCallAsDisconnecting() {
+ if (mParentCall == null) {
+ for (Call childCall : getChildCalls()) {
+ childCall.maybeSetCallAsDisconnectingChild();
+ }
+ }
+ }
+
void abort(long disconnectionTimeout) {
if (mCreateConnectionProcessor != null &&
!mCreateConnectionProcessor.isProcessingComplete()) {
diff --git a/src/com/android/server/telecom/CallsManager.java b/src/com/android/server/telecom/CallsManager.java
index dfe0d88..bca3de9 100644
--- a/src/com/android/server/telecom/CallsManager.java
+++ b/src/com/android/server/telecom/CallsManager.java
@@ -2777,7 +2777,8 @@
List<PhoneAccountHandle> allAccounts =
mPhoneAccountRegistrar.getCallCapablePhoneAccounts(handle.getScheme(), false, user,
capabilities,
- isEmergency ? 0 : PhoneAccount.CAPABILITY_EMERGENCY_CALLS_ONLY);
+ 0
+ /*isEmergency ? 0 : PhoneAccount.CAPABILITY_EMERGENCY_CALLS_ONLY*/);// add by T2M.zhangrenjie for FP4-1607 2021-07-21 end
// If no phone account is found, let's query emergency call only account again.
// That is happening while emergency account has capability CAPABILITY_EMERGENCY_CALLS_ONLY.
@@ -3115,6 +3116,7 @@
// call which was disconnected is a member of a conference (don't want to auto
// un-hold the conference if we remove a member of the conference).
if (!isDisconnectingChildCall && foregroundCall != null
+ && !foregroundCall.isDisconnectingChildCall()
&& foregroundCall.getState() == CallState.ON_HOLD) {
foregroundCall.unhold();
}
diff --git a/src/com/android/server/telecom/CreateConnectionProcessor.java b/src/com/android/server/telecom/CreateConnectionProcessor.java
index 700dac7..0a8a6c4 100644
--- a/src/com/android/server/telecom/CreateConnectionProcessor.java
+++ b/src/com/android/server/telecom/CreateConnectionProcessor.java
@@ -657,7 +657,7 @@
}
// then by hashcode
- return account1.hashCode() - account2.hashCode();
+ return Integer.compare(account1.hashCode(), account2.hashCode());
});
}