From 8d23b6bebd33eacd9bd6ec47553c9476693e75a6 Mon Sep 17 00:00:00 2001 From: Rubin Xu Date: Tue, 24 Mar 2020 19:37:04 +0000 Subject: [PATCH] Clear no_remove_managed_profile retriction when removing test PO Bug: 149898237 Test: atest com.android.cts.devicepolicy.OrgOwnedProfileOwnerTest Change-Id: I719ee98c7dda5e256e5c8e45b52888a130d6ff5a --- .../server/devicepolicy/DevicePolicyManagerService.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java index 740c5cb3e75a4..e84670e0f4c06 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java @@ -4405,6 +4405,11 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager { clearDeviceOwnerLocked(getDeviceOwnerAdminLocked(), userHandle); } if (isProfileOwner(adminReceiver, userHandle)) { + if (isProfileOwnerOfOrganizationOwnedDevice(userHandle)) { + mUserManager.setUserRestriction(UserManager.DISALLOW_REMOVE_MANAGED_PROFILE, + false, + UserHandle.of(getProfileParentId(userHandle))); + } final ActiveAdmin admin = getActiveAdminUncheckedLocked(adminReceiver, userHandle, /* parent */ false); clearProfileOwnerLocked(admin, userHandle);