| 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 acd1b15141e9a234e4c92c0621e40e7108fff5fd..e40990d1e92b12943e66c355da278f3d82c662c2 100644
|
| --- a/chrome/browser/prefs/tracked/tracked_split_preference.cc
|
| +++ b/chrome/browser/prefs/tracked/tracked_split_preference.cc
|
| @@ -30,7 +30,7 @@ void TrackedSplitPreference::OnNewValue(
|
| transaction->StoreSplitHash(pref_path_, dict_value);
|
| }
|
|
|
| -void TrackedSplitPreference::EnforceAndReport(
|
| +bool TrackedSplitPreference::EnforceAndReport(
|
| base::DictionaryValue* pref_store_contents,
|
| PrefHashStoreTransaction* transaction) const {
|
| base::DictionaryValue* dict_value = NULL;
|
| @@ -38,7 +38,7 @@ void TrackedSplitPreference::EnforceAndReport(
|
| pref_store_contents->Get(pref_path_, NULL)) {
|
| // There should be a dictionary or nothing at |pref_path_|.
|
| NOTREACHED();
|
| - return;
|
| + return false;
|
| }
|
|
|
| std::vector<std::string> invalid_keys;
|
| @@ -54,6 +54,7 @@ void TrackedSplitPreference::EnforceAndReport(
|
| helper_.GetAction(value_state);
|
| helper_.ReportAction(reset_action);
|
|
|
| + bool was_reset = false;
|
| if (reset_action == TrackedPreferenceHelper::DO_RESET) {
|
| if (value_state == PrefHashStoreTransaction::CHANGED) {
|
| DCHECK(!invalid_keys.empty());
|
| @@ -65,6 +66,7 @@ void TrackedSplitPreference::EnforceAndReport(
|
| } else {
|
| pref_store_contents->RemovePath(pref_path_, NULL);
|
| }
|
| + was_reset = true;
|
| }
|
|
|
| if (value_state != PrefHashStoreTransaction::UNCHANGED) {
|
| @@ -73,4 +75,6 @@ void TrackedSplitPreference::EnforceAndReport(
|
| pref_store_contents->GetDictionary(pref_path_, &new_dict_value);
|
| transaction->StoreSplitHash(pref_path_, new_dict_value);
|
| }
|
| +
|
| + return was_reset;
|
| }
|
|
|