Index: chrome/browser/ui/sync/one_click_signin_helper.cc |
diff --git a/chrome/browser/ui/sync/one_click_signin_helper.cc b/chrome/browser/ui/sync/one_click_signin_helper.cc |
index 7a898bad89ee47a1e4956eb38230e2c40297c99f..812b9e3643cf423e01d3adb2e542a4c7ec9624a7 100644 |
--- a/chrome/browser/ui/sync/one_click_signin_helper.cc |
+++ b/chrome/browser/ui/sync/one_click_signin_helper.cc |
@@ -540,6 +540,11 @@ bool OneClickSigninHelper::CanOffer(content::WebContents* web_contents, |
if (!profile) |
return false; |
+ SigninManager* manager = |
+ SigninManagerFactory::GetForProfile(profile); |
+ if (manager && !manager->IsSigninAllowed()) |
+ return false; |
+ |
if (can_offer_for == CAN_OFFER_FOR_INTERSTITAL_ONLY && |
!profile->GetPrefs()->GetBoolean(prefs::kReverseAutologinEnabled)) |
return false; |
@@ -548,8 +553,6 @@ bool OneClickSigninHelper::CanOffer(content::WebContents* web_contents, |
return false; |
if (!email.empty()) { |
- SigninManager* manager = |
- SigninManagerFactory::GetForProfile(profile); |
if (!manager) |
return false; |
@@ -661,6 +664,9 @@ OneClickSigninHelper::Offer OneClickSigninHelper::CanOfferOnIOThreadImpl( |
if (io_data->is_incognito()) |
return DONT_OFFER; |
+ if (!SigninManager::IsSigninAllowedOnIOThread(io_data)) |
+ return DONT_OFFER; |
+ |
if (!io_data->reverse_autologin_enabled()->GetValue()) |
return DONT_OFFER; |