Commit 06c6145d authored by Peter Boström's avatar Peter Boström Committed by Commit Bot

Fix nullptr crash in ExtensionUninstallDialogView

GetExtensionAnchorView() previously assumed that
GetBrowserActionsContainer() would always return a non-nullptr. This is
not the case for browser instances that do not support
Browser::FEATURE_TABSTRIP as most elements of ToolbarView are not
initialized (including |browser_actions_|).

Bug: chromium:892119
Change-Id: If67939cbe3c0174106848ce7339b789114391599
Reviewed-on: https://chromium-review.googlesource.com/c/1269176Reviewed-by: default avatarDevlin <rdevlin.cronin@chromium.org>
Commit-Queue: Peter Boström <pbos@chromium.org>
Cr-Commit-Position: refs/heads/master@{#597634}
parent a230a990
......@@ -43,9 +43,13 @@ ToolbarActionView* GetExtensionAnchorView(const std::string& extension_id,
BrowserView::GetBrowserViewForNativeWindow(window);
if (!browser_view)
return nullptr;
ToolbarActionView* reference_view = browser_view->toolbar_button_provider()
->GetBrowserActionsContainer()
->GetViewForId(extension_id);
DCHECK(browser_view->toolbar_button_provider());
BrowserActionsContainer* const browser_actions_container =
browser_view->toolbar_button_provider()->GetBrowserActionsContainer();
if (!browser_actions_container)
return nullptr;
ToolbarActionView* const reference_view =
browser_actions_container->GetViewForId(extension_id);
return reference_view && reference_view->visible() ? reference_view : nullptr;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment