From 5c9e6031a6a8f0ea3673dd68a808818ce4ed2082 Mon Sep 17 00:00:00 2001 From: Nicholas Sauer Date: Mon, 14 Jan 2019 10:56:02 -0800 Subject: [PATCH] Fix clearPackagePreferredActivities to check appid This fixes the method for secondary users. The callingUid must be converted to an app id before comparion. Reusing isCallerSameApp simplifies implementation. bug: 122833260 Test: Run on primary and secondary user: run cts-dev -a arm64-v8a -m CtsContentTestCases -t android.content.pm.cts.PackageManagerTest#testClearPackagePreferredActivities Change-Id: Ia0ee7b97051e0acd4164f067af69574ba3778291 --- .../core/java/com/android/server/pm/PackageManagerService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 597f5b3f4e05e..2e2eea1d84ee5 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -19073,7 +19073,7 @@ public class PackageManagerService extends IPackageManager.Stub // writer synchronized (mPackages) { PackageParser.Package pkg = mPackages.get(packageName); - if (pkg == null || pkg.applicationInfo.uid != callingUid) { + if (pkg == null || !isCallerSameApp(packageName, callingUid)) { if (mContext.checkCallingOrSelfPermission( android.Manifest.permission.SET_PREFERRED_APPLICATIONS) != PackageManager.PERMISSION_GRANTED) {