Index: chrome/browser/extensions/extension_service.cc |
diff --git a/chrome/browser/extensions/extension_service.cc b/chrome/browser/extensions/extension_service.cc |
index 45f30c6d096c70720c692adced88bf7685c55eae..a0a25a2d7d54d2c20d05cf54f24e6a4929687178 100644 |
--- a/chrome/browser/extensions/extension_service.cc |
+++ b/chrome/browser/extensions/extension_service.cc |
@@ -8,7 +8,9 @@ |
#include <algorithm> |
#include <iterator> |
+#include <memory> |
#include <set> |
+#include <utility> |
#include "base/command_line.h" |
#include "base/location.h" |
@@ -1766,6 +1768,10 @@ void ExtensionService::OnExtensionInstalled( |
} |
} |
+ // If the old version of the extension was disabled due to corruption, this |
+ // new install may correct the problem. |
+ disable_reasons &= ~Extension::DISABLE_CORRUPTED; |
+ |
// Unsupported requirements overrides the management policy. |
if (install_flags & extensions::kInstallFlagHasRequirementErrors) { |
disable_reasons |= Extension::DISABLE_UNSUPPORTED_REQUIREMENT; |