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

Commit ee24d848 authored by Amith Yamasani's avatar Amith Yamasani Committed by Android (Google) Code Review
Browse files

Merge "Stop guest user on exiting, to conserve resources" into lmp-mr1-dev

parents cd13ae76 6f96a44d
Loading
Loading
Loading
Loading
+25 −0
Original line number Diff line number Diff line
@@ -18972,6 +18972,31 @@ public final class ActivityManagerService extends ActivityManagerNative
            }
            mUserSwitchObservers.finishBroadcast();
        }
        stopGuestUserIfBackground();
    }
    /**
     * Stops the guest user if it has gone to the background.
     */
    private void stopGuestUserIfBackground() {
        synchronized (this) {
            final int num = mUserLru.size();
            for (int i = 0; i < num; i++) {
                Integer oldUserId = mUserLru.get(i);
                UserStartedState oldUss = mStartedUsers.get(oldUserId);
                if (oldUserId == UserHandle.USER_OWNER || oldUserId == mCurrentUserId
                        || oldUss.mState == UserStartedState.STATE_STOPPING
                        || oldUss.mState == UserStartedState.STATE_SHUTDOWN) {
                    continue;
                }
                UserInfo userInfo = mUserManager.getUserInfo(oldUserId);
                if (userInfo.isGuest()) {
                    // This is a user to be stopped.
                    stopUserLocked(oldUserId, null);
                    break;
                }
            }
        }
    }
    void scheduleStartProfilesLocked() {