aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYimin Li <ymli@google.com>2021-03-23 14:46:20 -0700
committerYimin Li <ymli@google.com>2021-03-23 14:46:20 -0700
commit10c3382b05ec24faec2c6079a92983cc7579ef0d (patch)
treec58723b991307b562761f1159992367bb494dd68
parente15ed8d181dec858f2c018bdd5ea73647ef81d9f (diff)
parenta0a24a7c38438d1e8649841e7a81c4af0a4054e1 (diff)
downloadims-10c3382b05ec24faec2c6079a92983cc7579ef0d.tar.gz
Merge commit 'a0a24a7c38438d1e8649841e7a81c4af0a4054e1' into HEAD
Change-Id: I9efd2a1dafa585078c6000e549308959c4bae87c
-rw-r--r--src/java/com/android/ims/FeatureConnection.java13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/java/com/android/ims/FeatureConnection.java b/src/java/com/android/ims/FeatureConnection.java
index f6668b53..97736b95 100644
--- a/src/java/com/android/ims/FeatureConnection.java
+++ b/src/java/com/android/ims/FeatureConnection.java
@@ -34,6 +34,8 @@ import com.android.internal.telephony.util.HandlerExecutor;
import java.util.concurrent.Executor;
+import java.util.NoSuchElementException;
+
/**
* Base class of MmTelFeatureConnection and RcsFeatureConnection.
*/
@@ -102,7 +104,8 @@ public abstract class FeatureConnection {
mBinder.linkToDeath(mDeathRecipient, 0);
}
} catch (RemoteException e) {
- // No need to do anything if the binder is already dead.
+ Log.w(TAG, "setBinder: linkToDeath on already dead Binder, setting null");
+ mBinder = null;
}
}
}
@@ -127,8 +130,12 @@ public abstract class FeatureConnection {
if (mIsAvailable) {
mIsAvailable = false;
mRegistrationBinder = null;
- if (mBinder != null) {
- mBinder.unlinkToDeath(mDeathRecipient, 0);
+ try {
+ if (mBinder != null) {
+ mBinder.unlinkToDeath(mDeathRecipient, 0);
+ }
+ } catch (NoSuchElementException e) {
+ Log.w(TAG, "onRemovedOrDied: unlinkToDeath called on unlinked Binder.");
}
if (mStatusCallback != null) {
Log.d(TAG, "onRemovedOrDied: notifyUnavailable");