Index: chrome/browser/profiles/profile_impl.cc |
diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc |
index a87fec7aff4c21cac36fcf12f6c7b9e1459af9f1..7f4fe3a26b91182ccee41502ead02b949d5b82ed 100644 |
--- a/chrome/browser/profiles/profile_impl.cc |
+++ b/chrome/browser/profiles/profile_impl.cc |
@@ -33,6 +33,7 @@ |
#include "chrome/browser/extensions/extension_pref_store.h" |
#include "chrome/browser/extensions/extension_process_manager.h" |
#include "chrome/browser/extensions/extension_service.h" |
+#include "chrome/browser/extensions/extension_settings.h" |
#include "chrome/browser/extensions/extension_special_storage_policy.h" |
#include "chrome/browser/extensions/user_script_master.h" |
#include "chrome/browser/favicon/favicon_service.h" |
@@ -461,6 +462,7 @@ void ProfileImpl::InitExtensions(bool extensions_enabled) { |
CommandLine::ForCurrentProcess(), |
GetPath().AppendASCII(ExtensionService::kInstallDirectoryName), |
extension_prefs_.get(), |
+ extension_settings_.get(), |
autoupdate_enabled, |
extensions_enabled)); |
@@ -815,13 +817,18 @@ void ProfileImpl::OnPrefsLoaded(bool success) { |
// Make sure we save to disk that the session has opened. |
prefs_->ScheduleSavePersistentPrefs(); |
+ FilePath install_directory = |
+ GetPath().AppendASCII(ExtensionService::kInstallDirectoryName); |
+ |
// Ensure that preferences set by extensions are restored in the profile |
// as early as possible. The constructor takes care of that. |
extension_prefs_.reset(new ExtensionPrefs( |
prefs_.get(), |
- GetPath().AppendASCII(ExtensionService::kInstallDirectoryName), |
+ install_directory, |
GetExtensionPrefValueMap())); |
+ extension_settings_.reset(new ExtensionSettings(install_directory)); |
+ |
DCHECK(!net_pref_observer_.get()); |
net_pref_observer_.reset( |
new NetPrefObserver(prefs_.get(), GetPrerenderManager())); |