Chromium Code Reviews| Index: extensions/renderer/dispatcher.cc |
| diff --git a/extensions/renderer/dispatcher.cc b/extensions/renderer/dispatcher.cc |
| index 13fadad7df52f354a67f706cdad60bcd96cb0787..5af58837e85a496a82cf6dd4a2172358564945e6 100644 |
| --- a/extensions/renderer/dispatcher.cc |
| +++ b/extensions/renderer/dispatcher.cc |
| @@ -997,6 +997,7 @@ void Dispatcher::OnActivateExtension(const std::string& extension_id) { |
| const Extension* extension = |
| RendererExtensionRegistry::Get()->GetByID(extension_id); |
| if (!extension) { |
| + NOTREACHED(); |
| // Extension was activated but was never loaded. This probably means that |
| // the renderer failed to load it (or the browser failed to tell us when it |
| // did). Failures shouldn't happen, but instead of crashing there (which |
| @@ -1092,6 +1093,9 @@ void Dispatcher::OnLoaded( |
| // Dispatcher is attached to a RenderThread. Presumably there is a |
| // mismatch there. In theory one would think it's possible for the |
| // browser to figure this out itself - but again, cost/benefit. |
| + // TODO(devlin): This may be fixed by crbug.com/528026. Monitor, and |
| + // consider making this a release CHECK. |
| + DCHECK(!extension_registry->Contains(extension->id())); |
|
lazyboy
2016/07/22 00:29:31
Change these to:
if (!extension_registry->Insert(e
Devlin
2016/07/26 03:45:09
Done.
|
| if (!extension_registry->Contains(extension->id())) |
| extension_registry->Insert(extension); |
| } |
| @@ -1160,8 +1164,12 @@ void Dispatcher::OnTransferBlobs(const std::vector<std::string>& blob_uuids) { |
| void Dispatcher::OnUnloaded(const std::string& id) { |
| // See comment in OnLoaded for why it would be nice, but perhaps incorrect, |
| // to CHECK here rather than guarding. |
| - if (!RendererExtensionRegistry::Get()->Remove(id)) |
| + // TODO(devlin): This may be fixed by crbug.com/528026. Monitor, and |
| + // consider making this a release CHECK. |
| + if (!RendererExtensionRegistry::Get()->Remove(id)) { |
| + NOTREACHED(); |
| return; |
| + } |
| active_extension_ids_.erase(id); |