| Index: chrome/browser/prefs/tracked/tracked_split_preference.cc
|
| diff --git a/chrome/browser/prefs/tracked/tracked_split_preference.cc b/chrome/browser/prefs/tracked/tracked_split_preference.cc
|
| index e40990d1e92b12943e66c355da278f3d82c662c2..6eabc7526d631f20f3b919284b4e360e72ce78b0 100644
|
| --- a/chrome/browser/prefs/tracked/tracked_split_preference.cc
|
| +++ b/chrome/browser/prefs/tracked/tracked_split_preference.cc
|
| @@ -9,6 +9,7 @@
|
| #include "base/logging.h"
|
| #include "base/values.h"
|
| #include "chrome/browser/prefs/pref_hash_store_transaction.h"
|
| +#include "chrome/browser/prefs/tracked/tracked_preference_validation_observer.h"
|
|
|
| TrackedSplitPreference::TrackedSplitPreference(
|
| const std::string& pref_path,
|
| @@ -32,7 +33,8 @@ void TrackedSplitPreference::OnNewValue(
|
|
|
| bool TrackedSplitPreference::EnforceAndReport(
|
| base::DictionaryValue* pref_store_contents,
|
| - PrefHashStoreTransaction* transaction) const {
|
| + PrefHashStoreTransaction* transaction,
|
| + TrackedPreferenceValidationObserver* observer) const {
|
| base::DictionaryValue* dict_value = NULL;
|
| if (!pref_store_contents->GetDictionary(pref_path_, &dict_value) &&
|
| pref_store_contents->Get(pref_path_, NULL)) {
|
| @@ -52,6 +54,10 @@ bool TrackedSplitPreference::EnforceAndReport(
|
|
|
| TrackedPreferenceHelper::ResetAction reset_action =
|
| helper_.GetAction(value_state);
|
| + if (observer) {
|
| + observer->OnSplitPreferenceValidation(
|
| + pref_path_, dict_value, invalid_keys, value_state, reset_action);
|
| + }
|
| helper_.ReportAction(reset_action);
|
|
|
| bool was_reset = false;
|
|
|