From c51cabd2c6d5c166db62d9ef126374b19983583e Mon Sep 17 00:00:00 2001 From: Patrick Baumann Date: Thu, 30 Jan 2020 10:45:02 -0800 Subject: [PATCH] Close gap on tracing AppsFilter This change adds tracing to the only missing section of code. Test: atest AppEnumerationTests Bug: 141922841 Change-Id: I2ec606b6270af7329a2bb5e68bbd8884ccefedf2 --- .../com/android/server/pm/AppsFilter.java | 37 +++++++++++-------- 1 file changed, 22 insertions(+), 15 deletions(-) diff --git a/services/core/java/com/android/server/pm/AppsFilter.java b/services/core/java/com/android/server/pm/AppsFilter.java index 7f73baefcabd7..89f24d86192c6 100644 --- a/services/core/java/com/android/server/pm/AppsFilter.java +++ b/services/core/java/com/android/server/pm/AppsFilter.java @@ -613,6 +613,7 @@ public class AppsFilter { } finally { Trace.endSection(); } + if (callingPkgSetting != null) { if (callingPkgInstruments(callingPkgSetting, targetPkgSetting, targetName)) { return false; @@ -626,28 +627,34 @@ public class AppsFilter { } } - if (callingSharedPkgSettings != null) { - int size = callingSharedPkgSettings.size(); - for (int index = 0; index < size; index++) { - PackageSetting pkgSetting = callingSharedPkgSettings.valueAt(index); - if (mOverlayReferenceMapper.isValidActor(targetName, pkgSetting.name)) { + try { + Trace.beginSection("mOverlayReferenceMapper"); + if (callingSharedPkgSettings != null) { + int size = callingSharedPkgSettings.size(); + for (int index = 0; index < size; index++) { + PackageSetting pkgSetting = callingSharedPkgSettings.valueAt(index); + if (mOverlayReferenceMapper.isValidActor(targetName, pkgSetting.name)) { + if (DEBUG_LOGGING) { + log(callingPkgSetting, targetPkgSetting, + "matches shared user of package that acts on target of " + + "overlay"); + } + return false; + } + } + } else { + if (mOverlayReferenceMapper.isValidActor(targetName, callingPkgSetting.name)) { if (DEBUG_LOGGING) { - log(callingPkgSetting, targetPkgSetting, - "matches shared user of package that acts on target of " - + "overlay"); + log(callingPkgSetting, targetPkgSetting, "acts on target of overlay"); } return false; } } - } else { - if (mOverlayReferenceMapper.isValidActor(targetName, callingPkgSetting.name)) { - if (DEBUG_LOGGING) { - log(callingPkgSetting, targetPkgSetting, "acts on target of overlay"); - } - return false; - } + } finally { + Trace.endSection(); } + return true; } finally { Trace.traceEnd(TRACE_TAG_PACKAGE_MANAGER);