Skip to content

C146 - crash when exiting full screen if vertical tabs and title bar are enabled #53470

@LaurenWags

Description

@LaurenWags

Description

When using a Chromium 146 version with vertical tabs and title bar enabled, if you exit full screen the browser crashes. If title bar is not enabled, no crash occurs.

Does not reproduce on Chromium 145 versions - checked 1.89.80 with C145 (last nightly before C146) and current release 1.87.192 with C145.

Steps to reproduce

  1. Fresh profile of C146 version
  2. Enable vertical tabs
  3. Navigate to brave://settings/appearance
  4. Enable title bar
  5. Go full screen (either green maximize button or keyboard shortcut)
  6. Exit full screen (either green button or keyboard shortcut)
  7. Brave crashes

Crash report ID: e9040500-b78c-5e0f-0000-000000000000
call stack:

Details
[ 00 ] BrowserLayoutParams::WithClientArea(gfx::Rect const&) const ( immediate_crash.h:180 )
[ 01 ] BrowserLayoutParams::InLocalCoordinates(gfx::Rect const&) const ( browser_view_layout_params.cc:40 )
[ 02 ] BrowserViewLayoutDelegateImpl::GetBrowserLayoutParams(bool) const ( browser_view_layout_delegate_impl.cc:72 )
[ 03 ] BrowserViewLayoutImpl::Layout(views::View*) ( browser_view_layout_impl.cc:207 )
[ 04 ] views::View::Layout(base::NonCopyablePassKey<views::View>) ( view.cc:950 )
[ 05 ] views::View::Layout(base::NonCopyablePassKey<views::View>) ( view.cc:950 )
[ 06 ] void views::View::LayoutSuperclass<views::View, BrowserView>(T0*) ( view.h:2003 )
[ 07 ] BrowserView::Layout(base::NonCopyablePassKey<views::View>) ( browser_view.cc:4969 )
[ 08 ] views::View::LayoutImmediately() ( view.cc:3761 )
[ 09 ] views::View::LayoutImmediately() ( view.cc:3761 )
[ 10 ] views::View::DeprecatedLayoutImmediately() ( view.cc:942 )
[ 11 ] BrowserView::UpdateUIForContents(content::WebContents*, bool) ( browser_view.cc:5560 )
[ 12 ] BrowserView::ProcessFullscreen(bool, long long) ( browser_view.cc:5653 )
[ 13 ] remote_cocoa::NativeWidgetNSWindowBridge::FullscreenControllerTransitionStart(bool) ( native_widget_ns_window_bridge.mm:1527 )
[ 14 ] non-virtual thunk to remote_cocoa::NativeWidgetNSWindowBridge::FullscreenControllerTransitionStart(bool) ( native_widget_ns_window_bridge.mm:0 )
[ 15 ] remote_cocoa::NativeWidgetNSWindowFullscreenController::OnWindowWillExitFullscreen() ( native_widget_ns_window_fullscreen_controller.mm:220 )
[ 16 ] remote_cocoa::NativeWidgetNSWindowBridge::FullscreenControllerTransitionStart(bool) ( native_widget_ns_window_bridge.mm:1527 )
[ 17 ] non-virtual thunk to remote_cocoa::NativeWidgetNSWindowBridge::FullscreenControllerTransitionStart(bool) ( native_widget_ns_window_bridge.mm:0 )
[ 18 ] remote_cocoa::NativeWidgetNSWindowFullscreenController::OnWindowWillExitFullscreen() ( native_widget_ns_window_fullscreen_controller.mm:220 )
[ 19 ] 0x18d541618 ( CoreFoundation )
[ 20 ] 0x18d5cda88 ( CoreFoundation )
[ 21 ] 0x18d5cd9cc ( CoreFoundation )
[ 22 ] 0x18d51013c ( CoreFoundation )
[ 23 ] 0x18ed3f4a0 ( Foundation )
[ 24 ] 0x19276d5fc ( AppKit )
[ 25 ] 0x192770998 ( AppKit )
[ 26 ] 0x1926c4854 ( AppKit )
[ 27 ] 0x1927706c8 ( AppKit )
[ 28 ] 0x19297fb64 ( AppKit )
[ 29 ] 0x191b0c200 ( AppKit )
[ 30 ] __43-[BrowserCrApplication sendAction:to:from:]_block_invoke ( chrome_browser_application_mac.mm:390 )
[ 31 ] base::apple::CallWithEHFrame(void () block_pointer) ( Brave Browser Nightly Framework )
[ 32 ] 0x191b0bfa0 ( AppKit )
[ 33 ] 0x191b0bfa0 ( AppKit )
[ 34 ] 0x191b0bee4 ( AppKit )
[ 35 ] 0x191b0be0c ( AppKit )
[ 36 ] 0x191b0bd08 ( AppKit )
[ 37 ] 0x192750b98 ( AppKit )
[ 38 ] 0x191b092f0 ( AppKit )
[ 39 ] 0x191b08cf0 ( AppKit )
[ 40 ] 0x191b08bbc ( AppKit )
[ 41 ] 0x1927506e4 ( AppKit )
[ 42 ] 0x1920583b0 ( AppKit )
[ 43 ] 0x192058124 ( AppKit )
[ 44 ] 0x191b07744 ( AppKit )
[ 45 ] 0x191a95cdc ( AppKit )
[ 46 ] 0x191a9594c ( AppKit )
[ 47 ] 0x192505778 ( AppKit )
[ 48 ] __34-[BrowserCrApplication sendEvent:]_block_invoke ( chrome_browser_application_mac.mm:438 )
[ 49 ] base::apple::CallWithEHFrame(void () block_pointer) ( Brave Browser Nightly Framework )
[ 50 ] 0x192152f4c ( AppKit )
[ 51 ] 0x192152f4c ( AppKit )
[ 52 ] 0x191964ef8 ( AppKit )
[ 53 ] base::MessagePumpNSApplication::DoRun(base::MessagePump::Delegate*) ( message_pump_apple.mm:807 )
[ 54 ] base::MessagePumpCFRunLoopBase::Run(base::MessagePump::Delegate*) ( message_pump_apple.mm:161 )
[ 55 ] base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool, base::TimeDelta) ( thread_controller_with_message_pump_impl.cc:647 )
[ 56 ] non-virtual thunk to base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool, base::TimeDelta) ( run_loop.cc:0 )
[ 57 ] base::RunLoop::Run(base::Location const&) ( run_loop.cc:135 )
[ 58 ] content::BrowserMainLoop::RunMainMessageLoop() ( browser_main_loop.cc:1117 )
[ 59 ] content::BrowserMainRunnerImpl::Run() ( browser_main_runner_impl.cc:151 )
[ 60 ] content::BrowserMain(content::MainFunctionParams) ( browser_main.cc:32 )
[ 61 ] content::RunContentProcess(content::ContentMainParams, content::ContentMainRunner*) ( content_main.cc:358 )
[ 62 ] content::ContentMain(content::ContentMainParams) ( content_main.cc:371 )
[ 63 ] content::RunContentProcess(content::ContentMainParams, content::ContentMainRunner*) ( content_main.cc:358 )
[ 64 ] content::ContentMain(content::ContentMainParams) ( content_main.cc:371 )
[ 65 ] ChromeMain ( chrome_main.cc:191 )
[ 66 ] 0x18d0d3da0 ( dyld )
[ 67 ] 0x18d0d3da0 ( dyld )

Actual result

Brave crashes when exiting full screen if title bar is enabled with vertical tabs.

If title bar not enabled, no crash exiting full screen.

Screen.Recording.2026-03-09.at.11.34.20.AM.mov

Expected result

No crash as with 1.87.192 Chromium: 145.0.7632.160

Reproduces how often

Easily reproduced

Brave version (brave://version info)

Brave | 1.89.100 Chromium: 146.0.7680.32 (Official Build) nightly (arm64)
-- | --
Revision | 39c205d7d17c655ccd689c6ca70fa4955be9d7ad
OS | macOS Version 26.3 (Build 25D125)
Brave | 1.88.125 Chromium: 146.0.7680.65 (Official Build) (arm64)
-- | --
Revision | dca83643d1cd8290acec894c3efaee1bead0de99
OS | macOS Version 26.3 (Build 25D125)

Channel information

  • release (stable)
  • beta
  • nightly

Reproducibility

  • with Brave Shields disabled
  • with Brave Rewards disabled
  • in the latest version of Chrome

Miscellaneous information

cc @rebron

Metadata

Metadata

Assignees

Type

No type

Projects

Status

Done

Relationships

None yet

Development

No branches or pull requests

Issue actions