summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Xiang Wang <xwxw@google.com> 2023-12-11 21:48:18 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2023-12-11 21:48:18 +0000
commitc809fceefd3e481d5d6a5a2c68746398c7cfc40c (patch)
tree24c89970a8cc190c79fcb4985a2a9f0813f18f8f
parent686026e2f77c1df9901350f53eebb87b0d0ff4bb (diff)
parentbcb1cffda497394735ad72740dd5c42ad96c3c19 (diff)
Merge "Don't throw if hint session death link doesn't exist" into main
-rw-r--r--services/core/java/com/android/server/power/hint/HintManagerService.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/power/hint/HintManagerService.java b/services/core/java/com/android/server/power/hint/HintManagerService.java
index f425ba32ced0..ce43254c470e 100644
--- a/services/core/java/com/android/server/power/hint/HintManagerService.java
+++ b/services/core/java/com/android/server/power/hint/HintManagerService.java
@@ -51,6 +51,7 @@ import java.io.FileDescriptor;
import java.io.PrintWriter;
import java.util.Arrays;
import java.util.List;
+import java.util.NoSuchElementException;
import java.util.Objects;
/** An hint service implementation that runs in System Server process. */
@@ -521,7 +522,11 @@ public final class HintManagerService extends SystemService {
if (mHalSessionPtr == 0) return;
mNativeWrapper.halCloseHintSession(mHalSessionPtr);
mHalSessionPtr = 0;
- mToken.unlinkToDeath(this, 0);
+ try {
+ mToken.unlinkToDeath(this, 0);
+ } catch (NoSuchElementException ignored) {
+ Slogf.d(TAG, "Death link does not exist for session with UID " + mUid);
+ }
ArrayMap<IBinder, ArraySet<AppHintSession>> tokenMap = mActiveSessions.get(mUid);
if (tokenMap == null) {
Slogf.w(TAG, "UID %d is not present in active session map", mUid);