Merge "Disallow work profiles on non-initial users in headless"
diff --git a/core/java/android/content/pm/UserInfo.java b/core/java/android/content/pm/UserInfo.java
index ccaee92..6386f75 100644
--- a/core/java/android/content/pm/UserInfo.java
+++ b/core/java/android/content/pm/UserInfo.java
@@ -446,11 +446,7 @@
if (isProfile() || isGuest() || isRestricted()) {
return false;
}
- if (UserManager.isHeadlessSystemUserMode()) {
- return id != UserHandle.USER_SYSTEM;
- } else {
- return id == UserHandle.USER_SYSTEM;
- }
+ return isMain();
}
// TODO(b/142482943): Get rid of this (after removing it from all tests) if feasible.
diff --git a/services/tests/servicestests/src/com/android/server/pm/UserManagerServiceUserInfoTest.java b/services/tests/servicestests/src/com/android/server/pm/UserManagerServiceUserInfoTest.java
index 92fddc7..d999aa3 100644
--- a/services/tests/servicestests/src/com/android/server/pm/UserManagerServiceUserInfoTest.java
+++ b/services/tests/servicestests/src/com/android/server/pm/UserManagerServiceUserInfoTest.java
@@ -22,6 +22,7 @@
import static android.content.pm.UserInfo.FLAG_FULL;
import static android.content.pm.UserInfo.FLAG_GUEST;
import static android.content.pm.UserInfo.FLAG_INITIALIZED;
+import static android.content.pm.UserInfo.FLAG_MAIN;
import static android.content.pm.UserInfo.FLAG_MANAGED_PROFILE;
import static android.content.pm.UserInfo.FLAG_PROFILE;
import static android.content.pm.UserInfo.FLAG_RESTRICTED;
@@ -206,6 +207,13 @@
assertFalse("Switching to a profiles should be disabled", userInfo.supportsSwitchTo());
}
+ /** Test UserInfo.canHaveProfile for main user */
+ @Test
+ public void testCanHaveProfile() throws Exception {
+ UserInfo userInfo = createUser(100, FLAG_MAIN, null);
+ assertTrue("Main users can have profile", userInfo.canHaveProfile());
+ }
+
/** Tests upgradeIfNecessaryLP (but without locking) for upgrading from version 8 to 9+. */
@Test
public void testUpgradeIfNecessaryLP_9() {