The client should not be removed until ERROR_CANCEL is removed in the
system service, since that's the HIDL contract. Pending clients will start
after, automatically with the current logic.
Test: With fingerprint enrolled on multiple users, switch rapidly
system service does not crash
Fixes:
128346522
Change-Id: I6907d8f76373c012ddffd2b98a81d70e79ac72ab
if (getCurrentClient() instanceof InternalRemovalClient
|| getCurrentClient() instanceof InternalEnumerateClient) {
Slog.w(getTag(), "User switched while performing cleanup");
- removeClient(getCurrentClient());
- clearEnumerateState();
}
updateActiveGroup(userId, null);
doTemplateCleanupForUser(userId);