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 c497e5ad1cb65d29cb1dee8bdf09f1c1094fe1e1..d8521e56aafe48e7ef3df8e4a9941c604cc4f81d 100644 |
--- a/chrome/browser/extensions/extension_pref_value_map.cc |
+++ b/chrome/browser/extensions/extension_pref_value_map.cc |
@@ -116,10 +116,13 @@ bool ExtensionPrefValueMap::DoesExtensionControlPref( |
void ExtensionPrefValueMap::RegisterExtension(const std::string& ext_id, |
const base::Time& install_time, |
bool is_enabled) { |
- if (entries_.find(ext_id) != entries_.end()) |
- UnregisterExtension(ext_id); |
- entries_[ext_id] = new ExtensionEntry; |
- entries_[ext_id]->install_time = install_time; |
+ if (entries_.find(ext_id) == entries_.end()) { |
+ entries_[ext_id] = new ExtensionEntry; |
+ |
+ // Only update the install time if the extension is newly installed. |
+ entries_[ext_id]->install_time = install_time; |
+ } |
+ |
entries_[ext_id]->enabled = is_enabled; |
} |