diff options
| author | 2023-11-27 16:34:13 -0800 | |
|---|---|---|
| committer | 2023-11-27 16:35:28 -0800 | |
| commit | ee142e2dbef2e8d05f415a36813e03fbfe1ec6e7 (patch) | |
| tree | 8448b0e0e08ec67bbec8dee3e8179a18c6015334 | |
| parent | 6b1f843d6000f45eab42fda3079731875d120d6d (diff) | |
Don't throw if hint session death link doesn't exist
Bug: 313458589
Test: atest HintManagerServiceTest
Change-Id: I985a1869bd7575cad44a21394dc4d68d2248be6c
| -rw-r--r-- | services/core/java/com/android/server/power/hint/HintManagerService.java | 7 |
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 ee3b74653b75..ca5ecc6b865f 100644 --- a/services/core/java/com/android/server/power/hint/HintManagerService.java +++ b/services/core/java/com/android/server/power/hint/HintManagerService.java @@ -53,6 +53,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. */ @@ -553,7 +554,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); + } } synchronized (mLock) { ArrayMap<IBinder, ArraySet<AppHintSession>> tokenMap = mActiveSessions.get(mUid); |