Reland: "Sync: Support multiple setup UIs."
This reverts commit 06bbee4ce66d8827fd9c6a35f404fd21376f75a7.
The bug was caused by SupervisedUserService not releasing sync_blocker_ in Shutdown, as it should.
BUG=563721,620019
TBR=
Review-Url: https://codereview.chromium.org/2064183002
Cr-Commit-Position: refs/heads/master@{#401048}
diff --git a/chrome/browser/sync/profile_sync_service_android.cc b/chrome/browser/sync/profile_sync_service_android.cc
index 81d83b85..b77164f 100644
--- a/chrome/browser/sync/profile_sync_service_android.cc
+++ b/chrome/browser/sync/profile_sync_service_android.cc
@@ -186,7 +186,11 @@
const JavaParamRef<jobject>& obj,
jboolean in_progress) {
DCHECK_CURRENTLY_ON(BrowserThread::UI);
- sync_service_->SetSetupInProgress(in_progress);
+ if (in_progress) {
+ sync_blocker_ = sync_service_->GetSetupInProgressHandle();
+ } else {
+ sync_blocker_.reset();
+ }
}
jboolean ProfileSyncServiceAndroid::IsFirstSetupComplete(