Skip to content
Snippets Groups Projects
Commit 5dd74cdf authored by Nikhil Kumar's avatar Nikhil Kumar Committed by Android Build Coastguard Worker
Browse files

Refactored switchUSer to handle user switch back to the current user

The existing implementation of user switching puts subsequent user switches into a queue if there is already a user switch in progress. For example, if the current user is A and there is a user switch sequence to switch to user B and then to user C, the UserController#switchUser method will put the user switch to C into a pending user switch list and perform it once the existing user switch to B is finished.

However, if the sequence is to switch from user A to user B and then back to user A, and when switch to user A reaches the UserController#switchUser method before the switch to user B is completed, the method will think that the current user is A and that there is no need to switch to user A, and will therefore skip that switch.

The refactored code handles this scenario by adding an extra condition which additionally verifies that there are no further switches scheduled in case the target user is equal to the current user and the switch is going to be skipped.

Bug: 303743201
Test: tested manually with switch user scenario current user is 0 switch to user 10 and then switch back to user 0.
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:1e3d4f48ab24593ec401ccbc968efbc0a82fea40)
Merged-In: Ia40cfacbee6fc174c90db8e3687838ae01e2858b
Change-Id: Ia40cfacbee6fc174c90db8e3687838ae01e2858b
parent 6ff78c36
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment