summaryrefslogtreecommitdiffstats
path: root/chrome/service
diff options
context:
space:
mode:
authorerikwright@chromium.org <erikwright@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-12-23 21:24:46 +0000
committererikwright@chromium.org <erikwright@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-12-23 21:24:46 +0000
commit56cbcb3a456ffc4a2fe2f69c0d3cbd993fc0e13a (patch)
treeb2f64981ef3b2ce30601c39e3adfe6fdf64809b3 /chrome/service
parentc7c161a0bd2f64b1a6eca61dcd8417771950847e (diff)
downloadchromium_src-56cbcb3a456ffc4a2fe2f69c0d3cbd993fc0e13a.zip
chromium_src-56cbcb3a456ffc4a2fe2f69c0d3cbd993fc0e13a.tar.gz
chromium_src-56cbcb3a456ffc4a2fe2f69c0d3cbd993fc0e13a.tar.bz2
Fix a race condition in preference metric reporting.
Introduces: - PrefFilter: An interface to intercept preference values as they are loaded from disk, before any changes are possible. - PrefHashFilter: An implementation that verifies preference values against hashes in a PrefHashStore. - PrefHashStore(Impl): An interface and implementation for storing and verifying hashes of preferences. - PrefHashCalculator: A utility for calculating preference value hashes. TBR=brettw (base/base.gyp), scottbyer (chrome/service/service_process_prefs.cc) BUG=321680 NOTRY=True Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=242382 Review URL: https://codereview.chromium.org/90563003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242407 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/service')
-rw-r--r--chrome/service/service_process_prefs.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/chrome/service/service_process_prefs.cc b/chrome/service/service_process_prefs.cc
index c628a0b..d923185 100644
--- a/chrome/service/service_process_prefs.cc
+++ b/chrome/service/service_process_prefs.cc
@@ -5,12 +5,15 @@
#include "chrome/service/service_process_prefs.h"
#include "base/message_loop/message_loop_proxy.h"
+#include "base/prefs/pref_filter.h"
#include "base/values.h"
ServiceProcessPrefs::ServiceProcessPrefs(
const base::FilePath& pref_filename,
base::SequencedTaskRunner* task_runner)
- : prefs_(new JsonPrefStore(pref_filename, task_runner)) {
+ : prefs_(new JsonPrefStore(pref_filename,
+ task_runner,
+ scoped_ptr<PrefFilter>())) {
}
ServiceProcessPrefs::~ServiceProcessPrefs() {}