summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-09 16:56:23 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-09 16:56:23 +0000
commit71f381a8807aa40b5076d51f091528dac467ea09 (patch)
tree8ca1618dcf2a80f1e67717513a66757b21714108 /chrome/browser/extensions
parente84925d3e94486d97ba4c477b830ef2249cffff7 (diff)
downloadchromium_src-71f381a8807aa40b5076d51f091528dac467ea09.zip
chromium_src-71f381a8807aa40b5076d51f091528dac467ea09.tar.gz
chromium_src-71f381a8807aa40b5076d51f091528dac467ea09.tar.bz2
Revert 74292 - Splits ChromeURLDataManager into 2 chunks:
. ChromeURLDataManager is no longer a singleton and is always used on the UI thread. ChromeURLDataManager is now profile specific (you get from the profile). . ChromeURLDataManagerBackend handles the URLRequests and the DataSources. ChromeURLDataManagerBackend is created by ChromeURLRequestContext. All DataSources are now profile specific. There were two that wanted to be global, but have been converted. BUG=52022 71868 TEST=none Review URL: http://codereview.chromium.org/6286131 TBR=sky@chromium.org Review URL: http://codereview.chromium.org/6461024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74294 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions')
-rw-r--r--chrome/browser/extensions/extension_function_dispatcher.cc6
-rw-r--r--chrome/browser/extensions/extensions_ui.cc7
2 files changed, 11 insertions, 2 deletions
diff --git a/chrome/browser/extensions/extension_function_dispatcher.cc b/chrome/browser/extensions/extension_function_dispatcher.cc
index 3d6f4d4..839b341 100644
--- a/chrome/browser/extensions/extension_function_dispatcher.cc
+++ b/chrome/browser/extensions/extension_function_dispatcher.cc
@@ -391,7 +391,11 @@ ExtensionFunctionDispatcher::ExtensionFunctionDispatcher(
// ChromeURLDataManager.
if (extension->HasHostPermission(GURL(chrome::kChromeUIFavIconURL))) {
WebUIFavIconSource* favicon_source = new WebUIFavIconSource(profile_);
- profile_->GetChromeURLDataManager()->AddDataSource(favicon_source);
+ BrowserThread::PostTask(
+ BrowserThread::IO, FROM_HERE,
+ NewRunnableMethod(ChromeURLDataManager::GetInstance(),
+ &ChromeURLDataManager::AddDataSource,
+ make_scoped_refptr(favicon_source)));
}
// Update the extension permissions. Doing this each time we create an EFD
diff --git a/chrome/browser/extensions/extensions_ui.cc b/chrome/browser/extensions/extensions_ui.cc
index c0406dd..087102c 100644
--- a/chrome/browser/extensions/extensions_ui.cc
+++ b/chrome/browser/extensions/extensions_ui.cc
@@ -959,7 +959,12 @@ ExtensionsUI::ExtensionsUI(TabContents* contents) : DOMUI(contents) {
ExtensionsUIHTMLSource* html_source = new ExtensionsUIHTMLSource();
// Set up the chrome://extensions/ source.
- contents->profile()->GetChromeURLDataManager()->AddDataSource(html_source);
+ BrowserThread::PostTask(
+ BrowserThread::IO, FROM_HERE,
+ NewRunnableMethod(
+ ChromeURLDataManager::GetInstance(),
+ &ChromeURLDataManager::AddDataSource,
+ make_scoped_refptr(html_source)));
}
// static