Chromium Code Reviews
Description[sync] [chromeos] Fix setup flow when sync data is cleared via dashboard and sync is set up again
On Chrome OS, when a user clears their sync data via the dashboard, logs
out, logs in again, and attempts to set up sync once more, the setup
flow ends up getting stuck after the backend is initialized, because
SigninTracker does not respond to the OnStateChanged call from
ProfileSyncService::OnBackendInitialized.
This regression can be traced back to r171190, where SigninTracker was
no longer initialized with the SigninTracker::SERVICES_INITIALIZING
state in SyncSetupHandler::DisplayConfigureSync. This was causing
SigninTracker to drop the OnStateChanged call from ProfileSyncService
in the scenario where the user attempted to set up sync while already
signed in to the Chrome OS device after clearing sync data via the
dashboard.
This patch restores the initial SigninTracker state in
SyncSetupHandler::DisplayConfigureSync. It also fixes the
unittests that were previously failing in the original CL.
BUG=167090, 168064, 168875, 81265
TEST=On ChromeOS, clear the dashboard, log out, log in, and set up sync.
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=176755
Patch Set 1 #Patch Set 2 : Disable unittests that behave differently based on whether client login flow is enabled or not. #
Total comments: 2
Patch Set 3 : Fix unittests #
Total comments: 5
Patch Set 4 : CR feedback #
Messages
Total messages: 14 (0 generated)
|
||||||||||||||||||||||||||||