diff options
| author | 2023-11-07 15:17:54 +0800 | |
|---|---|---|
| committer | 2023-11-23 07:02:12 +0000 | |
| commit | 1850db48f39281bb91f1ff2338288b2f32213a51 (patch) | |
| tree | 0a800c1d301d23508f3890ea75a59c2dfe31820f | |
| parent | 37c9cdbd923000f45414182932d11eb196c87c20 (diff) | |
Killing the client process only if the uid matches
If the client process was killed by lmkd or other,
and its pid rescued by any process. Then it may be
killed by mistaken.
Bug: 312576121
Change-Id: I577372953c5f9090d11dbf9ca5bd67e1f5dd9408
Signed-off-by: liulvping <liulvping@xiaomi.com>
| -rw-r--r-- | services/core/java/com/android/server/wm/WindowState.java | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java index 04699619bfc8..afd2c50a174c 100644 --- a/services/core/java/com/android/server/wm/WindowState.java +++ b/services/core/java/com/android/server/wm/WindowState.java @@ -3489,7 +3489,9 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP // just kill it. And if it is a window of foreground activity, the activity can be // restarted automatically if needed. Slog.w(TAG, "Exception thrown during dispatchAppVisibility " + this, e); - android.os.Process.killProcess(mSession.mPid); + if (android.os.Process.getUidForPid(mSession.mPid) == mSession.mUid) { + android.os.Process.killProcess(mSession.mPid); + } } } |