Chromium Code Reviews| 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 dc0a0f4424dfef03148f347c6baaa5e5bbdd92bb..b70bab3dd328f724d13c87504f7cb99411c78d0b 100644 |
| --- a/chrome/browser/prefs/tracked/tracked_split_preference.cc |
| +++ b/chrome/browser/prefs/tracked/tracked_split_preference.cc |
| @@ -30,14 +30,14 @@ void TrackedSplitPreference::OnNewValue(const base::Value* value) const { |
| pref_hash_store_->StoreSplitHash(pref_path_, dict_value); |
| } |
| -void TrackedSplitPreference::EnforceAndReport( |
| +bool TrackedSplitPreference::EnforceAndReport( |
| base::DictionaryValue* pref_store_contents) const { |
| base::DictionaryValue* dict_value = NULL; |
| if (!pref_store_contents->GetDictionary(pref_path_, &dict_value) && |
| 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; |
| @@ -53,6 +53,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 == PrefHashStore::CHANGED) { |
| DCHECK(!invalid_keys.empty()); |
| @@ -64,6 +65,7 @@ void TrackedSplitPreference::EnforceAndReport( |
| } else { |
| pref_store_contents->RemovePath(pref_path_, NULL); |
| } |
| + was_reset = true; |
| } |
| if (value_state != PrefHashStore::UNCHANGED) { |
| @@ -72,4 +74,6 @@ void TrackedSplitPreference::EnforceAndReport( |
| pref_store_contents->GetDictionary(pref_path_, &new_dict_value); |
| pref_hash_store_->StoreSplitHash(pref_path_, new_dict_value); |
| } |
| + |
| + return was_reset; |
|
erikwright (departed)
2014/02/06 20:04:03
ditto
robertshield
2014/02/07 04:36:19
ditto
|
| } |