diff options
| author | 2023-05-23 11:34:31 +0000 | |
|---|---|---|
| committer | 2023-05-23 11:34:31 +0000 | |
| commit | 8d54cb871e3c577c593644d4708966e65cea993e (patch) | |
| tree | ce6a5600d13aa1c2f0ad2161d2b866fab035a364 | |
| parent | 39169f811534ff3a4341697b206125951ada6e34 (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.java | 10 |
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() { |