Index: extensions/browser/guest_view/extension_options/extension_options_guest.cc |
diff --git a/extensions/browser/guest_view/extension_options/extension_options_guest.cc b/extensions/browser/guest_view/extension_options/extension_options_guest.cc |
index ef79ee704918a5a009fff7995a441d0950e0be8f..66c9abae998af2bf8ffb0f96a1396f2f29df00c9 100644 |
--- a/extensions/browser/guest_view/extension_options/extension_options_guest.cc |
+++ b/extensions/browser/guest_view/extension_options/extension_options_guest.cc |
@@ -91,6 +91,13 @@ void ExtensionOptionsGuest::CreateWebContents( |
extensions::ExtensionRegistry::Get(browser_context()); |
const extensions::Extension* extension = |
registry->enabled_extensions().GetByID(extension_id); |
+ if (!extension) { |
+ // The ID was valid but the extension didn't exist. Typically this will |
+ // happen when an extension is disabled. |
+ callback.Run(NULL); |
+ return; |
+ } |
+ |
options_page_ = extensions::OptionsPageInfo::GetOptionsPage(extension); |
if (!options_page_.is_valid()) { |
callback.Run(NULL); |