Index: chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.cc |
diff --git a/chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.cc b/chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.cc |
index 392968018c716d363f7168a304d3e52208971dd3..7955e13ccb7eccf7d0351d8fb399d6cb6abfdd96 100644 |
--- a/chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.cc |
+++ b/chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.cc |
@@ -13,6 +13,8 @@ |
#include "base/values.h" |
#include "chrome/browser/browser_process.h" |
#include "chrome/browser/chromeos/login/helper.h" |
+#include "chrome/browser/chromeos/login/session/user_session_manager.h" |
+#include "chrome/browser/chromeos/login/startup_utils.h" |
#include "chrome/browser/chromeos/policy/policy_oauth2_token_fetcher.h" |
#include "chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chromeos.h" |
#include "chrome/browser/chromeos/policy/wildcard_login_checker.h" |
@@ -212,7 +214,13 @@ void UserCloudPolicyManagerChromeOS::OnInitializationCompleted( |
// access token is already available. |
if (!client()->is_registered()) { |
if (wait_for_policy_fetch_) { |
- FetchPolicyOAuthTokenUsingSigninContext(); |
+ if (chromeos::StartupUtils::IsWebviewSigninEnabled()) { |
+ OnAccessTokenAvailable(chromeos::UserSessionManager::GetInstance() |
+ ->user_context() |
+ .GetAccessToken()); |
xiyuan
2015/04/27 16:33:27
The AT in user context just have oauth login scrop
achuithb
2015/04/27 17:54:36
Yup, we need this for the wildcard login check. I
|
+ } else { |
+ FetchPolicyOAuthTokenUsingSigninContext(); |
+ } |
} else if (!access_token_.empty()) { |
OnAccessTokenAvailable(access_token_); |
} |