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 07423591fd285f709ab81420619220e78cf052d3..16c2178fe79c03368f4da08cdf58388a0a180e7f 100644 |
--- a/chrome/browser/prefs/pref_value_store.cc |
+++ b/chrome/browser/prefs/pref_value_store.cc |
@@ -7,6 +7,7 @@ |
#include "base/logging.h" |
#include "base/prefs/pref_notifier.h" |
#include "base/prefs/pref_observer.h" |
+#include "chrome/browser/prefs/pref_registry.h" |
PrefValueStore::PrefStoreKeeper::PrefStoreKeeper() |
: pref_value_store_(NULL), |
@@ -65,6 +66,25 @@ PrefValueStore::PrefValueStore(PrefStore* managed_prefs, |
CheckInitializationCompleted(); |
} |
+PrefValueStore::PrefValueStore(PrefStore* managed_prefs, |
+ PrefStore* extension_prefs, |
+ PrefStore* command_line_prefs, |
+ PrefStore* user_prefs, |
+ PrefStore* recommended_prefs, |
+ PrefRegistry* pref_registry, |
+ PrefNotifier* pref_notifier) |
+ : pref_notifier_(pref_notifier), |
+ initialization_failed_(false) { |
+ InitPrefStore(MANAGED_STORE, managed_prefs); |
+ InitPrefStore(EXTENSION_STORE, extension_prefs); |
+ InitPrefStore(COMMAND_LINE_STORE, command_line_prefs); |
+ InitPrefStore(USER_STORE, user_prefs); |
+ InitPrefStore(RECOMMENDED_STORE, recommended_prefs); |
+ InitPrefStore(DEFAULT_STORE, pref_registry->default_prefs_.get()); |
+ |
+ CheckInitializationCompleted(); |
+} |
+ |
PrefValueStore::~PrefValueStore() {} |
PrefValueStore* PrefValueStore::CloneAndSpecialize( |