diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2020-09-30 23:14:22 +0000 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2020-09-30 23:14:22 +0000 |
commit | afc2989469413ab1cc9cfc0b2b07e5ed0f8a3401 (patch) | |
tree | 183a7c4bdc32a6c6725494d48a0fd3a0a75b309e | |
parent | 6ab7e0dda187d8a2ce7dbbe1abdd2558666374de (diff) | |
parent | 41c1360539483a417f166e3a785be961416e2a8a (diff) | |
download | telephony-android11-qpr1-s1-release.tar.gz |
Snap for 6875707 from 41c1360539483a417f166e3a785be961416e2a8a to rvc-qpr1-releaseandroid-11.0.0_r31android-11.0.0_r29android-11.0.0_r28android-11.0.0_r27android-11.0.0_r26android-11.0.0_r24android-11.0.0_r23android-11.0.0_r22android-11.0.0_r21android-11.0.0_r20android-11.0.0_r19android-11.0.0_r18android11-qpr1-s2-releaseandroid11-qpr1-s1-releaseandroid11-qpr1-releaseandroid11-qpr1-d-s1-releaseandroid11-qpr1-d-release
Change-Id: I2701e528762ee06ff71ba0c1336ae52a6f305b16
3 files changed, 17 insertions, 9 deletions
diff --git a/src/java/com/android/internal/telephony/ServiceStateTracker.java b/src/java/com/android/internal/telephony/ServiceStateTracker.java index 922b934172..3b34d40a56 100755 --- a/src/java/com/android/internal/telephony/ServiceStateTracker.java +++ b/src/java/com/android/internal/telephony/ServiceStateTracker.java @@ -3414,15 +3414,15 @@ public class ServiceStateTracker extends Handler { } } - if (hasCssIndicatorChanged) { - mPhone.notifyAllActiveDataConnections(); - } - mReasonDataDenied = mNewReasonDataDenied; mMaxDataCalls = mNewMaxDataCalls; mRejectCode = mNewRejectCode; } + if (hasCssIndicatorChanged) { + mPhone.notifyAllActiveDataConnections(); + } + ServiceState oldMergedSS = new ServiceState(mPhone.getServiceState()); // swap mSS and mNewSS to put new state in mSS diff --git a/src/java/com/android/internal/telephony/dataconnection/DcTracker.java b/src/java/com/android/internal/telephony/dataconnection/DcTracker.java index 9c6c5d6f82..a8dcbb7947 100644 --- a/src/java/com/android/internal/telephony/dataconnection/DcTracker.java +++ b/src/java/com/android/internal/telephony/dataconnection/DcTracker.java @@ -2030,7 +2030,7 @@ public class DcTracker extends Handler { // this type. if (!apnContext.getApnType().equals(PhoneConstants.APN_TYPE_DUN) || ServiceState.isGsm(getDataRat())) { - dataConnection = checkForCompatibleDataConnection(apnContext); + dataConnection = checkForCompatibleDataConnection(apnContext, apnSetting); if (dataConnection != null) { // Get the apn setting used by the data connection ApnSetting dataConnectionApnSetting = dataConnection.getApnSetting(); @@ -2441,7 +2441,8 @@ public class DcTracker extends Handler { } } - private DataConnection checkForCompatibleDataConnection(ApnContext apnContext) { + private DataConnection checkForCompatibleDataConnection(ApnContext apnContext, + ApnSetting nextApn) { int apnType = apnContext.getApnTypeBitmask(); ArrayList<ApnSetting> dunSettings = null; @@ -2480,7 +2481,7 @@ public class DcTracker extends Handler { + " found canHandle conn=" + curDc); } return curDc; - } else if (curDc.isActivating()) { + } else if (curDc.isActivating() || apnSetting.equals(nextApn)) { potentialDc = curDc; } } diff --git a/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java b/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java index 0d52ea1511..22d4c05b09 100755 --- a/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java +++ b/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java @@ -2882,9 +2882,16 @@ public class ImsPhoneCallTracker extends CallTracker implements ImsPullCall { } String callId = imsCall.getSession().getCallId(); - EmergencyNumberTracker emergencyNumberTracker = conn.getEmergencyNumberTracker(); + EmergencyNumberTracker emergencyNumberTracker = null; + EmergencyNumber num = null; + + if (conn != null) { + emergencyNumberTracker = conn.getEmergencyNumberTracker(); + num = conn.getEmergencyNumberInfo(); + } + mMetrics.writeOnImsCallTerminated(mPhone.getPhoneId(), imsCall.getCallSession(), - reasonInfo, mCallQualityMetrics.get(callId), conn.getEmergencyNumberInfo(), + reasonInfo, mCallQualityMetrics.get(callId), num, getNetworkCountryIso(), emergencyNumberTracker != null ? emergencyNumberTracker.getEmergencyNumberDbVersion() : TelephonyManager.INVALID_EMERGENCY_NUMBER_DB_VERSION); |