Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 801e342f authored by Amith Yamasani's avatar Amith Yamasani
Browse files

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
parent d3902a34
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -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);
+3 −1
Original line number Diff line number Diff line
@@ -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