| Index: chrome/browser/signin/signin_manager.cc
|
| ===================================================================
|
| --- chrome/browser/signin/signin_manager.cc (revision 177312)
|
| +++ chrome/browser/signin/signin_manager.cc (working copy)
|
| @@ -127,9 +127,15 @@
|
| TokenService* token_service = TokenServiceFactory::GetForProfile(profile_);
|
| if (token_service) {
|
| token_service->Initialize(GaiaConstants::kChromeSource, profile_);
|
| + // ChromeOS will kick off TokenService::LoadTokensFromDB from
|
| + // OAuthLoginManager once the rest of the Profile is fully initialized.
|
| + // Starting it from here would cause OAuthLoginManager mismatch the origin
|
| + // of OAuth2 tokens.
|
| +#if !defined(OS_CHROMEOS)
|
| if (!authenticated_username_.empty()) {
|
| token_service->LoadTokensFromDB();
|
| }
|
| +#endif
|
| }
|
| if (!user.empty() && !IsAllowedUsername(user)) {
|
| // User is signed in, but the username is invalid - the administrator must
|
| @@ -511,7 +517,7 @@
|
| // If we have oauth2 tokens, tell token service about them so it does not
|
| // need to fetch them again.
|
| if (!temp_oauth_login_tokens_.refresh_token.empty()) {
|
| - token_service->OnClientOAuthSuccess(temp_oauth_login_tokens_);
|
| + token_service->UpdateCredentialsWithOAuth2(temp_oauth_login_tokens_);
|
| temp_oauth_login_tokens_ = ClientOAuthResult();
|
| }
|
| }
|
|
|