diff --git a/services/core/java/com/android/server/pm/ComputerEngine.java b/services/core/java/com/android/server/pm/ComputerEngine.java index 46b7460dff1b..58448bfefdaf 100644 --- a/services/core/java/com/android/server/pm/ComputerEngine.java +++ b/services/core/java/com/android/server/pm/ComputerEngine.java @@ -2857,24 +2857,12 @@ public final long updateFlagsForComponent(long flags, int userId) { * Update given flags when being used to request {@link PackageInfo}. */ public final long updateFlagsForPackage(long flags, int userId) { - final boolean isCallerSystemUser = UserHandle.getCallingUserId() - == UserHandle.USER_SYSTEM; if ((flags & PackageManager.MATCH_ANY_USER) != 0) { // require the permission to be held; the calling uid and given user id referring // to the same user is not sufficient enforceCrossUserPermission(Binder.getCallingUid(), userId, false, false, !isRecentsAccessingChildProfiles(Binder.getCallingUid(), userId), "MATCH_ANY_USER flag requires INTERACT_ACROSS_USERS permission"); - } else if ((flags & PackageManager.MATCH_UNINSTALLED_PACKAGES) != 0 - && isCallerSystemUser - && mUserManager.hasProfile(UserHandle.USER_SYSTEM)) { - // If the caller wants all packages and has a profile associated with it, - // then match all users. This is to make sure that launchers that need to access - //work - // profile apps don't start breaking. TODO: Remove this hack when launchers stop - //using - // MATCH_UNINSTALLED_PACKAGES to query apps in other profiles. b/31000380 - flags |= PackageManager.MATCH_ANY_USER; } return updateFlags(flags, userId); }