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

Commit 9878bb99 authored by Christopher Tate's avatar Christopher Tate Committed by The Android Automerger
Browse files

Kill the real/isolated uid group, not the ApplicationInfo uid

This is a direct reimplementation in L of fixes applied to N in
these two commits:

8dc8d37c
e8741d23

Bug 19285814

Change-Id: I59bcc8f1d41c426e9da635bea9ad1d7c6756d5aa

Resolve merge conflict when cp'ing ag/941553 to mnc-mr1-release branch
parent 613f63b9
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -2814,7 +2814,7 @@ public final class ActivityManagerService extends ActivityManagerNative
            if (!app.killed) {
                Slog.wtfStack(TAG, "Removing process that hasn't been killed: " + app);
                Process.killProcessQuiet(app.pid);
                killProcessGroup(app.info.uid, app.pid);
                killProcessGroup(app.uid, app.pid);
            }
            if (lrui <= mLruProcessActivityStart) {
                mLruProcessActivityStart--;
@@ -3189,7 +3189,7 @@ public final class ActivityManagerService extends ActivityManagerNative
            // clean it up now.
            if (DEBUG_PROCESSES || DEBUG_CLEANUP) Slog.v(TAG_PROCESSES, "App died: " + app);
            checkTime(startTime, "startProcess: bad proc running, killing");
            killProcessGroup(app.info.uid, app.pid);
            killProcessGroup(app.uid, app.pid);
            handleAppDiedLocked(app, true, true);
            checkTime(startTime, "startProcess: done killing old proc");
        }
@@ -4705,7 +4705,7 @@ public final class ActivityManagerService extends ActivityManagerNative
            if (!fromBinderDied) {
                Process.killProcessQuiet(pid);
            }
            killProcessGroup(app.info.uid, pid);
            killProcessGroup(app.uid, pid);
            app.killed = true;
        }
+1 −1
Original line number Diff line number Diff line
@@ -548,7 +548,7 @@ final class ProcessRecord {
            }
            EventLog.writeEvent(EventLogTags.AM_KILL, userId, pid, processName, setAdj, reason);
            Process.killProcessQuiet(pid);
            Process.killProcessGroup(info.uid, pid);
            Process.killProcessGroup(uid, pid);
            if (!persistent) {
                killed = true;
                killedByAm = true;