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

Commit e7df4aa5 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "Notify caller when unlockUser() bails out"

parents 289759e0 98571a09
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -383,14 +383,14 @@ class UserController implements Handler.Callback {
     * Step from {@link UserState#STATE_RUNNING_LOCKED} to
     * {@link UserState#STATE_RUNNING_UNLOCKING}.
     */
    private void finishUserUnlocking(final UserState uss) {
    private boolean finishUserUnlocking(final UserState uss) {
        final int userId = uss.mHandle.getIdentifier();
        // Only keep marching forward if user is actually unlocked
        if (!StorageManager.isUserKeyUnlocked(userId)) return;
        if (!StorageManager.isUserKeyUnlocked(userId)) return false;
        synchronized (mLock) {
            // Do not proceed if unexpected state or a stale user
            if (mStartedUsers.get(userId) != uss || uss.state != STATE_RUNNING_LOCKED) {
                return;
                return false;
            }
        }
        uss.mUnlockProgress.start();
@@ -421,6 +421,7 @@ class UserController implements Handler.Callback {
            mHandler.obtainMessage(SYSTEM_USER_UNLOCK_MSG, userId, 0, uss)
                    .sendToTarget();
        });
        return true;
    }

    /**
@@ -1180,7 +1181,10 @@ class UserController implements Handler.Callback {
            return false;
        }

        finishUserUnlocking(uss);
        if (!finishUserUnlocking(uss)) {
            notifyFinished(userId, listener);
            return false;
        }

        // We just unlocked a user, so let's now attempt to unlock any
        // managed profiles under that user.