Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(303)

Unified Diff: chrome/browser/prefs/pref_value_store.cc

Issue 5213002: Fix for Bug 50726 "Save extension list and "winning" prefs from extensions" (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Addressed (first set of) comments by Mattias Created 10 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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,

Powered by Google App Engine
This is Rietveld 408576698