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

Commit 821f3b7b authored by Amith Yamasani's avatar Amith Yamasani Committed by android-build-merger
Browse files

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

am: 8cbe1a63

Change-Id: I97a70eafc6e6657b8d0f87a134c17499d66ccc77
parents 82f491ec 8cbe1a63
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);
        }
    }