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