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 f7fd9267ae1b2cf2a9e0ae7192ecbd1c9f1871e5..723734019dda3a15a8f9941a369fcad4f983db30 100644 |
--- a/chrome/browser/prefs/tracked/tracked_atomic_preference.cc |
+++ b/chrome/browser/prefs/tracked/tracked_atomic_preference.cc |
@@ -22,7 +22,7 @@ void TrackedAtomicPreference::OnNewValue( |
transaction->StoreHash(pref_path_, value); |
} |
-void TrackedAtomicPreference::EnforceAndReport( |
+bool TrackedAtomicPreference::EnforceAndReport( |
base::DictionaryValue* pref_store_contents, |
PrefHashStoreTransaction* transaction) const { |
const base::Value* value = NULL; |
@@ -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 != PrefHashStoreTransaction::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); |
transaction->StoreHash(pref_path_, new_value); |
} |
+ |
+ return was_reset; |
} |