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; |
} |