Hi @jame...@chromium.org @rdevlin...@chromium.org, here on ChromeOS we got a fresh dev channel [crash] that I suspect has to do with https://crrev.com/c/7549567. I am aware that Devlin has a longer-term migration plan to migrate to TabListInterface::CanEditTabList(), by which point this crashing code patch will become irrelevant. Before that plan happens, here is a CL that hopefully will patch the leakage for the time being. Please review, thanks.
[crash]:https://crbug.com/484611645
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
Hi @jame...@chromium.org @rdevlin...@chromium.org, here on ChromeOS we got a fresh dev channel [crash] that I suspect has to do with https://crrev.com/c/7549567. I am aware that Devlin has a longer-term migration plan to migrate to TabListInterface::CanEditTabList(), by which point this crashing code patch will become irrelevant. Before that plan happens, here is a CL that hopefully will patch the leakage for the time being. Please review, thanks.
[crash]:https://crbug.com/484611645
Done
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
[Extensions] Fix crash in ExtensionTabUtil::IsTabStripEditable
On platforms like ChromeOS, WindowControllerList can contain non-browser
windows. For these windows, calling GetBrowserWindowInterface() returns
a null pointer.
Previously, ExtensionTabUtil::IsTabStripEditable() passed this result
directly into TabListInterface::From(). Because TabListInterface::From()
implicitly expects a valid pointer to fetch the UnownedUserDataHost,
passing nullptr resulted in a crash deep within std::map::find during
user data lookup in ui::UnownedUserDataHost::GetImpl.
This CL fixes the crash by explicitly checking if the
BrowserWindowInterface is valid before attempting to query its tab list
interface. Non-browser windows are now safely skipped. This fixes the
immediate crash without interfering with the longer-term migration to
TabListInterface::CanEditTabList() tracked in
https://crbug.com/482088886.
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |