Merge "Use mPidMap instead of mProcessNames to get process with pid info"

This commit is contained in:
Jorim Jaggi
2019-04-03 13:16:43 +00:00
committed by Android (Google) Code Review

View File

@@ -5812,15 +5812,10 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
}
WindowProcessController getProcessController(int pid, int uid) {
final ArrayMap<String, SparseArray<WindowProcessController>> pmap = mProcessNames.getMap();
for (int i = pmap.size()-1; i >= 0; i--) {
final SparseArray<WindowProcessController> procs = pmap.valueAt(i);
for (int j = procs.size() - 1; j >= 0; j--) {
final WindowProcessController proc = procs.valueAt(j);
if (UserHandle.isApp(uid) && proc.getPid() == pid && proc.mUid == uid) {
return proc;
}
}
final WindowProcessController proc = mPidMap.get(pid);
if (proc == null) return null;
if (UserHandle.isApp(uid) && proc.mUid == uid) {
return proc;
}
return null;
}