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

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

Merge "Clean up ex-users in lock settings db" into nyc-dev

parents 7ef9f61b f11a5740
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -423,6 +423,9 @@ public class LockSettingsService extends ILockSettings.Stub {
            if (Intent.ACTION_USER_ADDED.equals(intent.getAction())) {
                // Notify keystore that a new user was added.
                final int userHandle = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, 0);
                if (userHandle > UserHandle.USER_SYSTEM) {
                    removeUser(userHandle, /* unknownUser= */ true);
                }
                final KeyStore ks = KeyStore.getInstance();
                final UserInfo parentInfo = mUserManager.getProfileParent(userHandle);
                final int parentHandle = parentInfo != null ? parentInfo.id : -1;
@@ -433,7 +436,7 @@ public class LockSettingsService extends ILockSettings.Stub {
            } else if (Intent.ACTION_USER_REMOVED.equals(intent.getAction())) {
                final int userHandle = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, 0);
                if (userHandle > 0) {
                    removeUser(userHandle);
                    removeUser(userHandle, /* unknownUser= */ false);
                }
            }
        }
@@ -1465,7 +1468,7 @@ public class LockSettingsService extends ILockSettings.Stub {
        return false;
    }

    private void removeUser(int userId) {
    private void removeUser(int userId, boolean unknownUser) {
        mStorage.removeUser(userId);
        mStrongAuth.removeUser(userId);

@@ -1480,7 +1483,7 @@ public class LockSettingsService extends ILockSettings.Stub {
        } catch (RemoteException ex) {
            Slog.w(TAG, "unable to clear GK secure user id");
        }
        if (mUserManager.getUserInfo(userId).isManagedProfile()) {
        if (unknownUser || mUserManager.getUserInfo(userId).isManagedProfile()) {
            removeKeystoreProfileKey(userId);
        }
    }