1.18 - RACE - Settings can reload while window is being constructed #19742

Closed
opened 2026-01-31 06:52:19 +00:00 by claunia · 1 comment
Owner

Originally created by @DHowett on GitHub (Apr 19, 2023).

Originally assigned to: @zadjii-msft on GitHub.

At least 1x on my dev box, I observed the following:

  • Main thread is crashing in TerminalWindow::UpdateSettings because _root is nullptr, while trying to call _root->Dispatcher().
  • The window thread is actively constructing the UI and has not yet assigned _root.

Boom

Originally created by @DHowett on GitHub (Apr 19, 2023). Originally assigned to: @zadjii-msft on GitHub. At least 1x on my dev box, I observed the following: - Main thread is crashing in TerminalWindow::UpdateSettings because `_root` is `nullptr`, while trying to call `_root->Dispatcher()`. - The window thread is actively constructing the UI and has not yet assigned `_root`. Boom
claunia added the Issue-BugIn-PRProduct-TerminalSeverity-BlockingArea-Windowing labels 2026-01-31 06:52:19 +00:00
Author
Owner

@DHowett commented on GitHub (Apr 19, 2023):

Noted while digging:

AppLogic is reaching inside TerminalWindow to register TerminalWindow for AppLogic's SettingsChanged event. It does this quite early (and I was bothered that it happened inside AppLogic?)

@DHowett commented on GitHub (Apr 19, 2023): Noted while digging: `AppLogic` is reaching inside `TerminalWindow` to register `TerminalWindow` for `AppLogic`'s `SettingsChanged` event. It does this quite early (and I was bothered that it happened inside AppLogic?)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#19742