summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Alex Johnston <acjohnston@google.com> 2023-05-23 11:34:31 +0000
committer Alex Johnston <acjohnston@google.com> 2023-05-23 11:34:31 +0000
commit8d54cb871e3c577c593644d4708966e65cea993e (patch)
treece6a5600d13aa1c2f0ad2161d2b866fab035a364
parent39169f811534ff3a4341697b206125951ada6e34 (diff)
Fix profile owners uid logic
Use uid instead of userId Bug: 268159214 Test: Set up a profile owner with TestDPC Change-Id: I69b2a767d9e0bfe2213998305b3f120ecb3ce549
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/Owners.java10
1 files changed, 9 insertions, 1 deletions
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/Owners.java b/services/devicepolicy/java/com/android/server/devicepolicy/Owners.java
index 0c1c406dd7e2..bb275e45b55a 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/Owners.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/Owners.java
@@ -204,7 +204,15 @@ class Owners {
@GuardedBy("mData")
Set<Integer> getProfileOwnerUidsLocked() {
- return mData.mProfileOwners.keySet();
+ Set<Integer> uids = new ArraySet<>();
+ for (int i = 0; i < mData.mProfileOwners.size(); i++) {
+ int userId = mData.mProfileOwners.keyAt(i);
+ OwnerInfo info = mData.mProfileOwners.valueAt(i);
+ uids.add(mPackageManagerInternal.getPackageUid(info.packageName,
+ PackageManager.MATCH_ALL | PackageManager.MATCH_KNOWN_PACKAGES,
+ userId));
+ }
+ return uids;
}
String getDeviceOwnerPackageName() {