| Index: chrome/browser/chromeos/login/oauth2_login_manager.cc
|
| diff --git a/chrome/browser/chromeos/login/oauth2_login_manager.cc b/chrome/browser/chromeos/login/oauth2_login_manager.cc
|
| index 314708c3c5e70b6866850d7a8bd6299e29d356dd..b8e28091a5794c81b4f947962997a9f37e2ff24e 100644
|
| --- a/chrome/browser/chromeos/login/oauth2_login_manager.cc
|
| +++ b/chrome/browser/chromeos/login/oauth2_login_manager.cc
|
| @@ -36,6 +36,7 @@ void OAuth2LoginManager::RestoreSession(
|
| user_profile_ = user_profile;
|
| auth_request_context_ = auth_request_context;
|
| state_ = OAuthLoginManager::SESSION_RESTORE_IN_PROGRESS;
|
| + restore_from_auth_cookies_ = restore_from_auth_cookies;
|
|
|
| // TODO(zelidrag): Remove eventually the next line in some future milestone.
|
| RemoveLegacyTokens();
|
| @@ -45,10 +46,11 @@ void OAuth2LoginManager::RestoreSession(
|
| if (oauth2_policy_fetcher_.get() &&
|
| oauth2_policy_fetcher_->has_oauth2_tokens()) {
|
| VLOG(1) << "Resuming profile creation after fetching policy token";
|
| - refresh_token_ = oauth2_policy_fetcher_->oauth2_tokens().refresh_token;
|
| - restore_from_auth_cookies = false;
|
| + // We already have tokens, no need to get them from the cookie jar again.
|
| + restore_from_auth_cookies_ = false;
|
| + StoreOAuth2Tokens(oauth2_policy_fetcher_->oauth2_tokens());
|
| }
|
| - restore_from_auth_cookies_ = restore_from_auth_cookies;
|
| +
|
| ContinueSessionRestore();
|
| }
|
|
|
| @@ -58,11 +60,6 @@ void OAuth2LoginManager::ContinueSessionRestore() {
|
| return;
|
| }
|
|
|
| - // Did we already fetch the refresh token (either policy or db)?
|
| - if (!refresh_token_.empty()) {
|
| - // TODO(zelidrag): Figure out where to stick that refresh_token_ into.
|
| - // We probalby need bit more than that.
|
| - }
|
| LoadAndVerifyOAuth2Tokens();
|
| }
|
|
|
| @@ -107,6 +104,13 @@ void OAuth2LoginManager::RemoveLegacyTokens() {
|
| prefs->UnregisterPreference(prefs::kOAuth1Secret);
|
| }
|
|
|
| +void OAuth2LoginManager::StoreOAuth2Tokens(
|
| + const GaiaAuthConsumer::ClientOAuthResult& oauth2_tokens) {
|
| + TokenService* token_service =
|
| + TokenServiceFactory::GetForProfile(user_profile_);
|
| + token_service->UpdateCredentialsWithOAuth2(oauth2_tokens);
|
| +}
|
| +
|
| void OAuth2LoginManager::LoadAndVerifyOAuth2Tokens() {
|
| // If we have no cookies, try to load saved OAuth2 token from TokenService.
|
| TokenService* token_service = SetupTokenService();
|
| @@ -126,8 +130,7 @@ void OAuth2LoginManager::FetchOAuth2Tokens() {
|
| void OAuth2LoginManager::OnOAuth2TokensAvailable(
|
| const GaiaAuthConsumer::ClientOAuthResult& oauth2_tokens) {
|
| LOG(INFO) << "OAuth2 tokens fetched";
|
| - TokenService* token_service = SetupTokenService();
|
| - token_service->UpdateCredentialsWithOAuth2(oauth2_tokens);
|
| + StoreOAuth2Tokens(oauth2_tokens);
|
| }
|
|
|
| void OAuth2LoginManager::OnOAuth2TokensFetchFailed() {
|
|
|