[PR #16588] Pump the message queue on frozen windows #30945

Open
opened 2026-01-31 09:44:00 +00:00 by claunia · 0 comments
Owner

Original Pull Request: https://github.com/microsoft/terminal/pull/16588

State: closed
Merged: Yes


This changeset ensures that the message queue of frozen windows is
always being serviced. This should ensure that it won't fill up and
lead to deadlocks, freezes, or similar. I've tried a lot of different
approaches before settling on this one. Introducing a custom WM_APP
message has the benefit of being the least intrusive to the existing
code base.

The approach that I would have favored the most would be to never
destroy the AppHost instance in the first place, as I imagined that
this would be more robust in general and resolve other (rare) bugs.
However, I found that this requires rewriting some substantial parts
of the code base around AppHost and it could be something that may
be of interest in the future.

Closes #16332
Depends on #16587 and #16575

**Original Pull Request:** https://github.com/microsoft/terminal/pull/16588 **State:** closed **Merged:** Yes --- This changeset ensures that the message queue of frozen windows is always being serviced. This should ensure that it won't fill up and lead to deadlocks, freezes, or similar. I've tried _a lot_ of different approaches before settling on this one. Introducing a custom `WM_APP` message has the benefit of being the least intrusive to the existing code base. The approach that I would have favored the most would be to never destroy the `AppHost` instance in the first place, as I imagined that this would be more robust in general and resolve other (rare) bugs. However, I found that this requires rewriting some substantial parts of the code base around `AppHost` and it could be something that may be of interest in the future. Closes #16332 Depends on #16587 and #16575
claunia added the pull-request label 2026-01-31 09:44:00 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#30945