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


CrOS-Libchrome-Original-Commit: 56cbcb3a456ffc4a2fe2f69c0d3cbd993fc0e13a
6 files changed
tree: bdb7c8e022e85bb4fe56b21ae5f52a211e550b2d
  1. base/
  2. build/
  3. components/
  4. dbus/
  5. ipc/
  6. mojo/
  7. testing/
  8. third_party/
  9. ui/