Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 10524462 authored by Agatha Man's avatar Agatha Man Committed by Automerger Merge Worker
Browse files

Merge "linkToDeath exception cause system server crash" into rvc-qpr-dev am:...

Merge "linkToDeath exception cause system server crash" into rvc-qpr-dev am: 4ec6ae5f am: dd8b4ef4

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12122209

Change-Id: I1a00fdb1bf2cd94f200b9176092ee46f48d1c011
parents d1a1e1d7 dd8b4ef4
Loading
Loading
Loading
Loading

diff

0 → 100644
+25 −0
Original line number Diff line number Diff line
diff --git a/services/accessibility/java/com/android/server/accessibility/AbstractAccessibilityServiceConnection.java b/services/accessibility/java/com/android/server/accessibility/AbstractAccessibilityServiceConnection.java
index fc43882..832dc91 100644
--- a/services/accessibility/java/com/android/server/accessibility/AbstractAccessibilityServiceConnection.java
+++ b/services/accessibility/java/com/android/server/accessibility/AbstractAccessibilityServiceConnection.java
@@ -67,6 +67,7 @@ import java.util.Arrays;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
+import java.util.NoSuchElementException;
 
 /**
  * This class represents an accessibility client - either an AccessibilityService or a UiAutomation.
@@ -978,7 +979,11 @@ abstract class AbstractAccessibilityServiceConnection extends IAccessibilityServ
                 /* ignore */
         }
         if (mService != null) {
-            mService.unlinkToDeath(this, 0);
+            try {
+                mService.unlinkToDeath(this, 0);
+            }catch(NoSuchElementException e) {
+                Slog.e(LOG_TAG, "Failed unregistering death link");
+            }
             mService = null;
         }
 
+6 −1
Original line number Diff line number Diff line
@@ -89,6 +89,7 @@ import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.NoSuchElementException;
import java.util.Set;

/**
@@ -1176,7 +1177,11 @@ abstract class AbstractAccessibilityServiceConnection extends IAccessibilityServ
                /* ignore */
        }
        if (mService != null) {
            try {
                mService.unlinkToDeath(this, 0);
            } catch (NoSuchElementException e) {
                Slog.e(LOG_TAG, "Failed unregistering death link");
            }
            mService = null;
        }