From a9d7209ff06367252fdd827f4bac051c1a38ffb3 Mon Sep 17 00:00:00 2001 From: Ravindra Thattahalli Javaraiah Date: Tue, 8 Dec 2015 18:35:17 +0530 Subject: Notify disconnect on phone dispose While disposing a phone object if there are any active connections then notify disconnect to the registrants to update the ui. Change-Id: I74a3d5c9e3919083a786df43053b2b70ad9deb15 CRs-Fixed: 954722 --- src/java/com/android/internal/telephony/cdma/CdmaCallTracker.java | 6 ++++++ src/java/com/android/internal/telephony/gsm/GsmCallTracker.java | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/src/java/com/android/internal/telephony/cdma/CdmaCallTracker.java b/src/java/com/android/internal/telephony/cdma/CdmaCallTracker.java index b3ab17b8c..f10ecb1db 100644 --- a/src/java/com/android/internal/telephony/cdma/CdmaCallTracker.java +++ b/src/java/com/android/internal/telephony/cdma/CdmaCallTracker.java @@ -1022,6 +1022,12 @@ public final class CdmaCallTracker extends CallTracker { if (!mPhone.mIsTheCurrentActivePhone) { Rlog.w(LOG_TAG, "Ignoring events received on inactive CdmaPhone"); + for (int i = 0; i < mConnections.length; i++) { + CdmaConnection conn = mConnections[i]; + if ((conn != null) && (conn.mCause != DisconnectCause.NOT_DISCONNECTED)) { + conn.onDisconnect(conn.mCause); + } + } return; } switch (msg.what) { diff --git a/src/java/com/android/internal/telephony/gsm/GsmCallTracker.java b/src/java/com/android/internal/telephony/gsm/GsmCallTracker.java index 185664204..0601002da 100644 --- a/src/java/com/android/internal/telephony/gsm/GsmCallTracker.java +++ b/src/java/com/android/internal/telephony/gsm/GsmCallTracker.java @@ -913,6 +913,12 @@ public final class GsmCallTracker extends CallTracker { if (!mPhone.mIsTheCurrentActivePhone) { Rlog.e(LOG_TAG, "Received message " + msg + "[" + msg.what + "] while being destroyed. Ignoring."); + for (int i = 0; i < mConnections.length; i++) { + GsmConnection conn = mConnections[i]; + if ((conn != null) && (conn.mCause != DisconnectCause.NOT_DISCONNECTED)) { + conn.onDisconnect(conn.mCause); + } + } return; } switch (msg.what) { -- cgit v1.2.3