diff options
author | stevenjb@google.com <stevenjb@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-30 20:49:44 +0000 |
---|---|---|
committer | stevenjb@google.com <stevenjb@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-30 20:49:44 +0000 |
commit | 9d443f3220a36ca7258da641f9aed47290006d9e (patch) | |
tree | 61e3723486a6d67cd84b9c08ceffb37b1c5627c3 /chrome/browser/net | |
parent | b9e898c2018c6c8f186ebfc4ec105a35f5bd4186 (diff) | |
download | chromium_src-9d443f3220a36ca7258da641f9aed47290006d9e.zip chromium_src-9d443f3220a36ca7258da641f9aed47290006d9e.tar.gz chromium_src-9d443f3220a36ca7258da641f9aed47290006d9e.tar.bz2 |
Initialize token service for sync after a crash.
Also affects running chrome from the command line (e.g. debugging)
BUG=chromium-os:14332
TEST=Run sync tests + test sync after crashing the browser.
Review URL: http://codereview.chromium.org/7276058
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91195 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/net')
-rw-r--r-- | chrome/browser/net/gaia/token_service.cc | 9 | ||||
-rw-r--r-- | chrome/browser/net/gaia/token_service.h | 3 |
2 files changed, 9 insertions, 3 deletions
diff --git a/chrome/browser/net/gaia/token_service.cc b/chrome/browser/net/gaia/token_service.cc index 98a07da..7069165 100644 --- a/chrome/browser/net/gaia/token_service.cc +++ b/chrome/browser/net/gaia/token_service.cc @@ -101,18 +101,21 @@ void TokenService::UpdateCredentials( void TokenService::LoadTokensFromDB() { DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); - token_loading_query_ = web_data_service_->GetAllTokens(this); + if (web_data_service_.get()) + token_loading_query_ = web_data_service_->GetAllTokens(this); } void TokenService::SaveAuthTokenToDB(const std::string& service, const std::string& auth_token) { DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); - web_data_service_->SetTokenForService(service, auth_token); + if (web_data_service_.get()) + web_data_service_->SetTokenForService(service, auth_token); } void TokenService::EraseTokensFromDB() { DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); - web_data_service_->RemoveAllTokens(); + if (web_data_service_.get()) + web_data_service_->RemoveAllTokens(); } bool TokenService::AreCredentialsValid() const { diff --git a/chrome/browser/net/gaia/token_service.h b/chrome/browser/net/gaia/token_service.h index 26d41ce..63be386 100644 --- a/chrome/browser/net/gaia/token_service.h +++ b/chrome/browser/net/gaia/token_service.h @@ -95,6 +95,9 @@ class TokenService : public GaiaAuthConsumer, // Typically you'd then update the credentials. void Initialize(const char* const source, Profile* profile); + // Used to determine whether Initialize() has been called. + bool Initialized() const { return !source_.empty(); } + // Update the credentials in the token service. // Afterwards you can StartFetchingTokens. void UpdateCredentials( |