Closed magreenblatt closed 1 year ago
Looks like a chicken/egg problem where BrowserView::ShouldHideUIForFullscreen
is trying to access |immersive_modecontroller| while that object is being constructed in BrowserView::InitBrowser
.
void BrowserView::InitBrowser(std::unique_ptr<Browser> browser) {
DCHECK(!browser_);
browser_ = std::move(browser);
immersive_mode_controller_ = chrome::CreateImmersiveModeController(this);
...
}
* thread #1, name = 'CrBrowserMain', queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
frame #0: 0x00000001c940f5b3 Chromium Embedded Framework`BrowserView::ShouldHideUIForFullscreen(this=0x00000001018b4600) const at browser_view.cc:1833:35
1830
1831 bool BrowserView::ShouldHideUIForFullscreen() const {
1832 // Immersive mode needs UI for the slide-down top panel.
-> 1833 if (immersive_mode_controller_->IsEnabled())
1834 return false;
1835
1836 if (!frame_->GetFrameView())
Target 0: (cefclient) stopped.
(lldb) bt
* thread #1, name = 'CrBrowserMain', queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
* frame #0: 0x00000001c940f5b3 Chromium Embedded Framework`BrowserView::ShouldHideUIForFullscreen(this=0x00000001018b4600) const at browser_view.cc:1833:35
frame #1: 0x00000001c89e0ed1 Chromium Embedded Framework`Browser::ShouldHideUIForFullscreen(this=0x0000000102063800) const at browser.cc:3221:30
frame #2: 0x00000001c89e0f17 Chromium Embedded Framework`Browser::PopupBrowserSupportsWindowFeature(this=0x0000000102063800, feature=FEATURE_TABSTRIP, check_can_support=true) const at browser.cc:3060:21
frame #3: 0x00000001c89d72b8 Chromium Embedded Framework`Browser::SupportsWindowFeatureImpl(this=0x0000000102063800, feature=FEATURE_TABSTRIP, check_can_support=true) const at browser.cc:3156:14
frame #4: 0x00000001c89d73a0 Chromium Embedded Framework`Browser::CanSupportWindowFeature(this=0x0000000102063800, feature=FEATURE_TABSTRIP) const at browser.cc:1102:10
frame #5: 0x00000001c940af79 Chromium Embedded Framework`BrowserView::GetSupportsTabStrip(this=0x00000001018b4600) const at browser_view.cc:1196:20
frame #6: 0x00000001c940aefa Chromium Embedded Framework`BrowserView::UsesImmersiveFullscreenMode(this=0x00000001018b4600) const at browser_view.cc:1109:33
frame #7: 0x00000001c9447aa3 Chromium Embedded Framework`chrome::CreateImmersiveModeController(browser_view=0x00000001018b4600) at immersive_mode_controller_factory_views.cc:26:21
frame #8: 0x00000001c94065a7 Chromium Embedded Framework`BrowserView::InitBrowser(this=0x00000001018b4600, browser=nullptr) at browser_view.cc:805:32
Looks to have been broken by this Chromium commit that added the call to GetSupportsTabStrip from UsesImmersiveFullscreenMode.
Filed with Chromium as https://bugs.chromium.org/p/chromium/issues/detail?id=1451731.
Describe the bug Mac M115 crashes on startup with
--enable-chrome-runtime
.To Reproduce Steps to reproduce the behavior:
--enable-chrome-runtime
Expected behavior The application should not crash.
Versions (please complete the following information):