Index: chrome/browser/prefs/pref_value_store.cc |
diff --git a/chrome/browser/prefs/pref_value_store.cc b/chrome/browser/prefs/pref_value_store.cc |
index 537aa6adbb466abb0f9c2b97339ab9b39a6fbad4..f3dd4445251e56dbefc1fd0e7699aa5512b1ace2 100644 |
--- a/chrome/browser/prefs/pref_value_store.cc |
+++ b/chrome/browser/prefs/pref_value_store.cc |
@@ -5,10 +5,10 @@ |
#include "chrome/browser/prefs/pref_value_store.h" |
#include "chrome/browser/browser_thread.h" |
-#include "chrome/browser/extensions/extension_pref_store.h" |
#include "chrome/browser/policy/configuration_policy_pref_store.h" |
#include "chrome/browser/prefs/command_line_pref_store.h" |
#include "chrome/browser/prefs/default_pref_store.h" |
+#include "chrome/common/in_memory_pref_store.h" |
#include "chrome/common/json_pref_store.h" |
#include "chrome/common/notification_service.h" |
@@ -41,7 +41,7 @@ PrefValueStore* PrefValueStore::CreatePrefValueStore( |
using policy::ConfigurationPolicyPrefStore; |
ConfigurationPolicyPrefStore* managed = NULL; |
ConfigurationPolicyPrefStore* device_management = NULL; |
- ExtensionPrefStore* extension = NULL; |
+ InMemoryPrefStore* extension = NULL; |
CommandLinePrefStore* command_line = NULL; |
ConfigurationPolicyPrefStore* recommended = NULL; |
@@ -55,7 +55,7 @@ PrefValueStore* PrefValueStore::CreatePrefValueStore( |
ConfigurationPolicyPrefStore::CreateManagedPlatformPolicyPrefStore(); |
device_management = |
ConfigurationPolicyPrefStore::CreateDeviceManagementPolicyPrefStore(); |
- extension = new ExtensionPrefStore(profile, PrefNotifier::EXTENSION_STORE); |
+ extension = new InMemoryPrefStore; |
command_line = new CommandLinePrefStore(CommandLine::ForCurrentProcess()); |
recommended = |
ConfigurationPolicyPrefStore::CreateRecommendedPolicyPrefStore(); |
@@ -152,7 +152,8 @@ bool PrefValueStore::PrefHasChanged(const char* path, |
return true; |
PrefNotifier::PrefStoreType controller = ControllingPrefStoreForPref(path); |
- DCHECK(controller != PrefNotifier::INVALID_STORE); |
+ DCHECK(controller != PrefNotifier::INVALID_STORE) |
+ << "Invalid controller for path " << path; |
if (controller == PrefNotifier::INVALID_STORE) |
return true; |
@@ -460,6 +461,14 @@ bool PrefValueStore::HasPolicyConflictingUserProxySettings() { |
return false; |
} |
+void PrefValueStore::ReplaceExtensionPrefStore(PrefStore* extension_prefs) { |
+ pref_stores_[PrefNotifier::EXTENSION_STORE].reset(extension_prefs); |
+} |
+ |
+PrefStore* PrefValueStore::GetExtensionPrefStore() { |
+ return pref_stores_[PrefNotifier::EXTENSION_STORE].get(); |
+} |
+ |
PrefValueStore::PrefValueStore(PrefStore* managed_platform_prefs, |
PrefStore* device_management_prefs, |
PrefStore* extension_prefs, |