Don't return self if not a profile
This fixes the inconsistency between no profile and a removed profile. Change-Id: I85d37ce42113bde8567be382372c5f4997601e85 Fixes: 34699518 Test: runtest -x frameworks/base/services/tests/servicetests/src/com/android/server/pm/UserManagerTest.java
This commit is contained in:
@@ -718,7 +718,7 @@ public class UserManagerService extends IUserManager.Stub {
|
||||
return null;
|
||||
}
|
||||
int parentUserId = profile.profileGroupId;
|
||||
if (parentUserId == UserInfo.NO_PROFILE_GROUP_ID) {
|
||||
if (parentUserId == userHandle || parentUserId == UserInfo.NO_PROFILE_GROUP_ID) {
|
||||
return null;
|
||||
} else {
|
||||
return getUserInfoLU(parentUserId);
|
||||
|
||||
@@ -177,10 +177,12 @@ public class UserManagerTest extends AndroidTestCase {
|
||||
UserInfo userInfo = createProfileForUser("Profile",
|
||||
UserInfo.FLAG_MANAGED_PROFILE, primaryUserId);
|
||||
assertNotNull(userInfo);
|
||||
|
||||
assertNull(mUserManager.getProfileParent(primaryUserId));
|
||||
UserInfo parentProfileInfo = mUserManager.getProfileParent(userInfo.id);
|
||||
assertNotNull(parentProfileInfo);
|
||||
assertEquals(parentProfileInfo.id, primaryUserId);
|
||||
removeUser(userInfo.id);
|
||||
assertNull(mUserManager.getProfileParent(primaryUserId));
|
||||
}
|
||||
|
||||
// Make sure only one managed profile can be created
|
||||
|
||||
Reference in New Issue
Block a user