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

Commit 131e6b24 authored by Wale Ogunwale's avatar Wale Ogunwale Committed by Android (Google) Code Review
Browse files

Merge "Prevent system uid component from running in an app process" into lmp-mr1-dev

parents 83631047 dd673a63
Loading
Loading
Loading
Loading
+8 −3
Original line number Original line Diff line number Diff line
@@ -2695,9 +2695,14 @@ public final class ActivityManagerService extends ActivityManagerNative
            // should never happen).
            // should never happen).
            SparseArray<ProcessRecord> procs = mProcessNames.getMap().get(processName);
            SparseArray<ProcessRecord> procs = mProcessNames.getMap().get(processName);
            if (procs == null) return null;
            if (procs == null) return null;
            final int N = procs.size();
            final int procCount = procs.size();
            for (int i = 0; i < N; i++) {
            for (int i = 0; i < procCount; i++) {
                if (UserHandle.isSameUser(procs.keyAt(i), uid)) return procs.valueAt(i);
                final int procUid = procs.keyAt(i);
                if (UserHandle.isApp(procUid) || !UserHandle.isSameUser(procUid, uid)) {
                    // Don't use an app process or different user process for system component.
                    continue;
                }
                return procs.valueAt(i);
            }
            }
        }
        }
        ProcessRecord proc = mProcessNames.get(processName, uid);
        ProcessRecord proc = mProcessNames.get(processName, uid);