Chromium Code Reviews| Index: chrome/browser/extensions/extension_pref_value_map.cc |
| diff --git a/chrome/browser/extensions/extension_pref_value_map.cc b/chrome/browser/extensions/extension_pref_value_map.cc |
| index 9d2ef06e4ea8ae50bbed8d9fb17cd17f7e63a43b..58366c767de2fe3d0ce9c254a666b6810b4b8e58 100644 |
| --- a/chrome/browser/extensions/extension_pref_value_map.cc |
| +++ b/chrome/browser/extensions/extension_pref_value_map.cc |
| @@ -27,11 +27,19 @@ ExtensionPrefValueMap::ExtensionPrefValueMap() { |
| } |
| ExtensionPrefValueMap::~ExtensionPrefValueMap() { |
| - NotifyOfDestruction(); |
| + if (!destroyed_) { |
|
Elliot Glaysher
2012/03/21 00:37:49
I assume this is here because ExtensionPrefValueMa
|
| + NotifyOfDestruction(); |
| + destroyed_ = true; |
| + } |
| STLDeleteValues(&entries_); |
| entries_.clear(); |
| } |
| +void ExtensionPrefValueMap::Shutdown() { |
| + NotifyOfDestruction(); |
| + destroyed_ = true; |
| +} |
| + |
| void ExtensionPrefValueMap::SetExtensionPref(const std::string& ext_id, |
| const std::string& key, |
| ExtensionPrefsScope scope, |