summaryrefslogtreecommitdiffstats
path: root/chrome/browser/profile.cc
diff options
context:
space:
mode:
authorjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-02 05:59:37 +0000
committerjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-02 05:59:37 +0000
commit6fad26338ed6119903826156f307e20fe6657c31 (patch)
tree5c6baed35fce907a0cea47ed6091c941db8ebfd1 /chrome/browser/profile.cc
parentf75c8f13b967b01babc9454506e9d2ed00519e39 (diff)
downloadchromium_src-6fad26338ed6119903826156f307e20fe6657c31.zip
chromium_src-6fad26338ed6119903826156f307e20fe6657c31.tar.gz
chromium_src-6fad26338ed6119903826156f307e20fe6657c31.tar.bz2
Third patch in getting rid of caching MessageLoop pointers and always using ChromeThread instead.
BUG=25354 Review URL: http://codereview.chromium.org/342068 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30687 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/profile.cc')
-rw-r--r--chrome/browser/profile.cc51
1 files changed, 18 insertions, 33 deletions
diff --git a/chrome/browser/profile.cc b/chrome/browser/profile.cc
index cafba63..aba64c5 100644
--- a/chrome/browser/profile.cc
+++ b/chrome/browser/profile.cc
@@ -13,8 +13,8 @@
#include "base/string_util.h"
#include "chrome/browser/bookmarks/bookmark_model.h"
#include "chrome/browser/browser_list.h"
-#include "chrome/browser/browser_process.h"
#include "chrome/browser/browser_theme_provider.h"
+#include "chrome/browser/chrome_thread.h"
#include "chrome/browser/download/download_manager.h"
#include "chrome/browser/extensions/extension_devtools_manager.h"
#include "chrome/browser/extensions/extension_message_service.h"
@@ -132,8 +132,7 @@ static void CleanupRequestContext(ChromeURLRequestContextGetter* context) {
context->CleanupOnUIThread();
// Clean up request context on IO thread.
- g_browser_process->io_thread()->message_loop()->ReleaseSoon(FROM_HERE,
- context);
+ ChromeThread::ReleaseSoon(ChromeThread::IO, FROM_HERE, context);
}
}
@@ -695,10 +694,7 @@ void ProfileImpl::InitWebResources() {
if (web_resource_service_)
return; // Already initialized.
- web_resource_service_ = new WebResourceService(
- this,
- g_browser_process->file_thread()->message_loop());
-
+ web_resource_service_ = new WebResourceService(this);
web_resource_service_->StartAfterDelay();
}
@@ -814,8 +810,7 @@ Profile* ProfileImpl::GetOriginalProfile() {
VisitedLinkMaster* ProfileImpl::GetVisitedLinkMaster() {
if (!visited_link_master_.get()) {
scoped_ptr<VisitedLinkMaster> visited_links(
- new VisitedLinkMaster(g_browser_process->file_thread(),
- visited_link_event_listener_.get(), this));
+ new VisitedLinkMaster(visited_link_event_listener_.get(), this));
if (!visited_links->Init())
return NULL;
visited_link_master_.swap(visited_links);
@@ -857,8 +852,7 @@ net::StrictTransportSecurityState*
if (!strict_transport_security_state_.get()) {
strict_transport_security_state_ = new net::StrictTransportSecurityState();
strict_transport_security_persister_ = new StrictTransportSecurityPersister(
- strict_transport_security_state_.get(),
- g_browser_process->file_thread(), path_);
+ strict_transport_security_state_.get(), path_);
}
return strict_transport_security_state_.get();
@@ -866,8 +860,7 @@ net::StrictTransportSecurityState*
PrefService* ProfileImpl::GetPrefs() {
if (!prefs_.get()) {
- prefs_.reset(new PrefService(GetPrefFilePath(),
- g_browser_process->file_thread()));
+ prefs_.reset(new PrefService(GetPrefFilePath()));
// The Profile class and ProfileManager class may read some prefs so
// register known prefs as soon as possible.
@@ -1268,31 +1261,23 @@ void ProfileImpl::ReinitializeSpellChecker() {
}
void ProfileImpl::NotifySpellCheckerChanged() {
- // The I/O thread may be NULL during testing.
- base::Thread* io_thread = g_browser_process->io_thread();
- if (io_thread) { // Notify resource message filters.
- SpellcheckerReinitializedDetails scoped_spellchecker;
- scoped_spellchecker.spellchecker = spellchecker_;
- io_thread->message_loop()->PostTask(FROM_HERE,
- new NotifySpellcheckerChangeTask(this, scoped_spellchecker));
- }
+ SpellcheckerReinitializedDetails scoped_spellchecker;
+ scoped_spellchecker.spellchecker = spellchecker_;
+ ChromeThread::PostTask(
+ ChromeThread::IO, FROM_HERE,
+ new NotifySpellcheckerChangeTask(this, scoped_spellchecker));
}
void ProfileImpl::DeleteSpellCheckerImpl(bool notify) {
- if (spellchecker_) {
- // The spellchecker must be deleted on the I/O thread.
- // The I/O thread may be NULL during testing.
- base::Thread* io_thread = g_browser_process->io_thread();
- if (io_thread)
- io_thread->message_loop()->ReleaseSoon(FROM_HERE, spellchecker_);
- else // during testing, we don't have an I/O thread
- spellchecker_->Release();
+ if (!spellchecker_)
+ return;
- spellchecker_ = NULL;
+ // The spellchecker must be deleted on the I/O thread.
+ ChromeThread::ReleaseSoon(ChromeThread::IO, FROM_HERE, spellchecker_);
+ spellchecker_ = NULL;
- if (notify)
- NotifySpellCheckerChanged();
- }
+ if (notify)
+ NotifySpellCheckerChanged();
}
SpellChecker* ProfileImpl::GetSpellChecker() {