summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerService.java12
1 files changed, 8 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index 093cdbc58019..cb8ae49d61fa 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -6474,18 +6474,22 @@ public class PackageManagerService extends IPackageManager.Stub
}
} else {
final PackageParser.Package pkg = mPackages.get(pkgName);
+ result = null;
if (pkg != null) {
- return applyPostResolutionFilter(filterIfNotSystemUser(
+ result = filterIfNotSystemUser(
mActivities.queryIntentForPackage(
intent, resolvedType, flags, pkg.activities, userId),
- userId), instantAppPkgName);
- } else {
+ userId);
+ }
+ if (result == null || result.size() == 0) {
// the caller wants to resolve for a particular package; however, there
// were no installed results, so, try to find an ephemeral result
addEphemeral = !ephemeralDisabled
&& isInstantAppAllowed(
intent, null /*result*/, userId, true /*skipPackageCheck*/);
- result = new ArrayList<ResolveInfo>();
+ if (result == null) {
+ result = new ArrayList<>();
+ }
}
}
}