Index: chrome/browser/prefs/tracked/tracked_atomic_preference.cc |
diff --git a/chrome/browser/prefs/tracked/tracked_atomic_preference.cc b/chrome/browser/prefs/tracked/tracked_atomic_preference.cc |
index c272fb766c2b9cd4a568933798f2f276cc1d631c..689bd885bdaa67d1da08a159714f9ff29bf80518 100644 |
--- a/chrome/browser/prefs/tracked/tracked_atomic_preference.cc |
+++ b/chrome/browser/prefs/tracked/tracked_atomic_preference.cc |
@@ -23,7 +23,7 @@ void TrackedAtomicPreference::OnNewValue( |
pref_hash_store_->StoreHash(pref_path_, value); |
} |
-void TrackedAtomicPreference::EnforceAndReport( |
+bool TrackedAtomicPreference::EnforceAndReport( |
base::DictionaryValue* pref_store_contents) const { |
const base::Value* value = NULL; |
pref_store_contents->Get(pref_path_, &value); |
@@ -36,8 +36,11 @@ void TrackedAtomicPreference::EnforceAndReport( |
helper_.GetAction(value_state); |
helper_.ReportAction(reset_action); |
- if (reset_action == TrackedPreferenceHelper::DO_RESET) |
+ bool was_reset = false; |
+ if (reset_action == TrackedPreferenceHelper::DO_RESET) { |
pref_store_contents->RemovePath(pref_path_, NULL); |
+ was_reset = true; |
+ } |
if (value_state != PrefHashStore::UNCHANGED) { |
// Store the hash for the new value (whether it was reset or not). |
@@ -45,4 +48,6 @@ void TrackedAtomicPreference::EnforceAndReport( |
pref_store_contents->Get(pref_path_, &new_value); |
pref_hash_store_->StoreHash(pref_path_, new_value); |
} |
+ |
+ return was_reset; |
} |