Index: chrome/browser/profile.cc |
diff --git a/chrome/browser/profile.cc b/chrome/browser/profile.cc |
index 72bf157140444f85b944765afb4d2fcbac5b89f1..12f2bf30f63766f8aba435d1bf3d87998a4836b0 100644 |
--- a/chrome/browser/profile.cc |
+++ b/chrome/browser/profile.cc |
@@ -15,6 +15,7 @@ |
#include "chrome/browser/browser_process.h" |
#include "chrome/browser/browser_theme_provider.h" |
#include "chrome/browser/download/download_manager.h" |
+#include "chrome/browser/extensions/extension_message_service.h" |
#include "chrome/browser/extensions/extension_process_manager.h" |
#include "chrome/browser/extensions/extensions_service.h" |
#include "chrome/browser/extensions/user_script_master.h" |
@@ -220,6 +221,10 @@ class OffTheRecordProfileImpl : public Profile, |
return NULL; |
} |
+ virtual ExtensionMessageService* GetExtensionMessageService() { |
+ return NULL; |
+ } |
+ |
virtual SSLHostState* GetSSLHostState() { |
if (!ssl_host_state_.get()) |
ssl_host_state_.reset(new SSLHostState()); |
@@ -499,6 +504,7 @@ ProfileImpl::ProfileImpl(const FilePath& path) |
&ProfileImpl::EnsureSessionServiceCreated); |
extension_process_manager_.reset(new ExtensionProcessManager(this)); |
+ extension_message_service_ = new ExtensionMessageService(this); |
PrefService* prefs = GetPrefs(); |
prefs->AddPrefObserver(prefs::kSpellCheckDictionary, this); |
@@ -657,6 +663,8 @@ ProfileImpl::~ProfileImpl() { |
history_service_ = NULL; |
bookmark_bar_model_.reset(); |
+ extension_message_service_->ProfileDestroyed(); |
+ |
MarkAsCleanShutdown(); |
} |
@@ -709,6 +717,10 @@ ExtensionProcessManager* ProfileImpl::GetExtensionProcessManager() { |
return extension_process_manager_.get(); |
} |
+ExtensionMessageService* ProfileImpl::GetExtensionMessageService() { |
+ return extension_message_service_.get(); |
+} |
+ |
SSLHostState* ProfileImpl::GetSSLHostState() { |
if (!ssl_host_state_.get()) |
ssl_host_state_.reset(new SSLHostState()); |