Snap for 7316203 from 10c3382b05ec24faec2c6079a92983cc7579ef0d to rvc-platform-release
Change-Id: I4b30c970801f8a42417d74db3bd739819f1ba96c
diff --git a/src/java/com/android/ims/FeatureConnection.java b/src/java/com/android/ims/FeatureConnection.java
index f6668b5..97736b9 100644
--- a/src/java/com/android/ims/FeatureConnection.java
+++ b/src/java/com/android/ims/FeatureConnection.java
@@ -34,6 +34,8 @@
import java.util.concurrent.Executor;
+import java.util.NoSuchElementException;
+
/**
* Base class of MmTelFeatureConnection and RcsFeatureConnection.
*/
@@ -102,7 +104,8 @@
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 @@
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");