Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1389)

Unified Diff: chrome/browser/extensions/api/content_settings/content_settings_store.cc

Issue 23581015: Reland r223124: Don't clear existing extension-defined preferences and content settings when reload… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/api/content_settings/content_settings_store.cc
diff --git a/chrome/browser/extensions/api/content_settings/content_settings_store.cc b/chrome/browser/extensions/api/content_settings/content_settings_store.cc
index 3b0c008cedbbb94f147c92f58bddfc20a11a21a9..6f0c1c9c66c39d2b25749ec0f41dfbfffdfcd1a1 100644
--- a/chrome/browser/extensions/api/content_settings/content_settings_store.cc
+++ b/chrome/browser/extensions/api/content_settings/content_settings_store.cc
@@ -123,15 +123,16 @@ void ContentSettingsStore::RegisterExtension(
bool is_enabled) {
base::AutoLock lock(lock_);
ExtensionEntryMap::iterator i = FindEntry(ext_id);
+ ExtensionEntry* entry;
if (i != entries_.end()) {
- delete i->second;
- entries_.erase(i);
+ entry = i->second;
+ } else {
+ entry = new ExtensionEntry;
+ entries_.insert(std::make_pair(install_time, entry));
}
- ExtensionEntry* entry = new ExtensionEntry;
entry->id = ext_id;
entry->enabled = is_enabled;
- entries_.insert(std::make_pair(install_time, entry));
}
void ContentSettingsStore::UnregisterExtension(

Powered by Google App Engine
This is Rietveld 408576698