Loading services/core/java/com/android/server/pm/Settings.java +25 −7 Original line number Diff line number Diff line Loading @@ -2649,7 +2649,7 @@ public final class Settings { private void writePackageListLPrInternal(int creatingUserId) { // Only derive GIDs for active users (not dying) final List<UserInfo> users = getUsers(UserManagerService.getInstance(), true); final List<UserInfo> users = getActiveUsers(UserManagerService.getInstance(), true); int[] userIds = new int[users.size()]; for (int i = 0; i < userIds.length; i++) { userIds[i] = users.get(i).id; Loading Loading @@ -4325,25 +4325,43 @@ public final class Settings { } /** * Return all users on the device, including partial or dying users. * Returns all users on the device, including pre-created and dying users. * * @param userManager UserManagerService instance * @return the list of users */ private static List<UserInfo> getAllUsers(UserManagerService userManager) { return getUsers(userManager, false); return getUsers(userManager, /* excludeDying= */ false, /* excludePreCreated= */ false); } /** * Returns the list of users on the device, excluding pre-created ones. * * @param userManager UserManagerService instance * @param excludeDying Indicates whether to exclude any users marked for deletion. * * @return the list of users */ private static List<UserInfo> getActiveUsers(UserManagerService userManager, boolean excludeDying) { return getUsers(userManager, excludeDying, /* excludePreCreated= */ true); } /** * Return the list of users on the device. Clear the calling identity before calling into * UserManagerService. * Returns the list of users on the device. * * @param userManager UserManagerService instance * @param excludeDying Indicates whether to exclude any users marked for deletion. * @param excludePreCreated Indicates whether to exclude any pre-created users. * * @return the list of users */ private static List<UserInfo> getUsers(UserManagerService userManager, boolean excludeDying) { private static List<UserInfo> getUsers(UserManagerService userManager, boolean excludeDying, boolean excludePreCreated) { long id = Binder.clearCallingIdentity(); try { return userManager.getUsers(excludeDying); return userManager.getUsers(/* excludePartial= */ true, excludeDying, excludePreCreated); } catch (NullPointerException npe) { // packagemanager not yet initialized } finally { Loading Loading
services/core/java/com/android/server/pm/Settings.java +25 −7 Original line number Diff line number Diff line Loading @@ -2649,7 +2649,7 @@ public final class Settings { private void writePackageListLPrInternal(int creatingUserId) { // Only derive GIDs for active users (not dying) final List<UserInfo> users = getUsers(UserManagerService.getInstance(), true); final List<UserInfo> users = getActiveUsers(UserManagerService.getInstance(), true); int[] userIds = new int[users.size()]; for (int i = 0; i < userIds.length; i++) { userIds[i] = users.get(i).id; Loading Loading @@ -4325,25 +4325,43 @@ public final class Settings { } /** * Return all users on the device, including partial or dying users. * Returns all users on the device, including pre-created and dying users. * * @param userManager UserManagerService instance * @return the list of users */ private static List<UserInfo> getAllUsers(UserManagerService userManager) { return getUsers(userManager, false); return getUsers(userManager, /* excludeDying= */ false, /* excludePreCreated= */ false); } /** * Returns the list of users on the device, excluding pre-created ones. * * @param userManager UserManagerService instance * @param excludeDying Indicates whether to exclude any users marked for deletion. * * @return the list of users */ private static List<UserInfo> getActiveUsers(UserManagerService userManager, boolean excludeDying) { return getUsers(userManager, excludeDying, /* excludePreCreated= */ true); } /** * Return the list of users on the device. Clear the calling identity before calling into * UserManagerService. * Returns the list of users on the device. * * @param userManager UserManagerService instance * @param excludeDying Indicates whether to exclude any users marked for deletion. * @param excludePreCreated Indicates whether to exclude any pre-created users. * * @return the list of users */ private static List<UserInfo> getUsers(UserManagerService userManager, boolean excludeDying) { private static List<UserInfo> getUsers(UserManagerService userManager, boolean excludeDying, boolean excludePreCreated) { long id = Binder.clearCallingIdentity(); try { return userManager.getUsers(excludeDying); return userManager.getUsers(/* excludePartial= */ true, excludeDying, excludePreCreated); } catch (NullPointerException npe) { // packagemanager not yet initialized } finally { Loading