dnkl/foot
41
2.0k
Fork
You've already forked foot
243

wayland: wait for pre-apply damage thread before destroying a terminal instance #2269

Manually merged
dnkl merged 1 commit from pre-apply-damage-crash-on-shutdown into master 2026年02月02日 12:41:18 +01:00
Owner
Copy link

It's possible, but unlikely, that we've pushed a "pre-apply damage" job to the renderer thread queue (or that we've pushed it, and that a thread is now working on it) when we shutdown a terminal instance.

This is sometimes caught in an assertion in term_destroy(), where we check the queue length is 0. Other times, or in release builds, we might crash in the thread, or in the shutdown logic when freeing the buffer chains associated with the terminal instance.

Fix by ensuring there's no pre-apply damage operation queued, or running, before shutting down a terminal instance.

Closes #2263

It's possible, but unlikely, that we've pushed a "pre-apply damage" job to the renderer thread queue (or that we've pushed it, and that a thread is now working on it) when we shutdown a terminal instance. This is sometimes caught in an assertion in `term_destroy()`, where we check the queue length is 0. Other times, or in release builds, we might crash in the thread, or in the shutdown logic when freeing the buffer chains associated with the terminal instance. Fix by ensuring there's no pre-apply damage operation queued, or running, before shutting down a terminal instance. Closes #2263
dnkl force-pushed pre-apply-damage-crash-on-shutdown from 75e11334e0
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
builds.sr.ht/freebsd-x64 Job completed
ci/woodpecker/pr/woodpecker Pipeline was successful
ci/woodpecker/pull_request_metadata/woodpecker Pipeline was successful
to f91f505051
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
builds.sr.ht/freebsd-x64 Job completed
ci/woodpecker/pr/woodpecker Pipeline was successful
2026年01月28日 13:25:54 +01:00
Compare
dnkl force-pushed pre-apply-damage-crash-on-shutdown from f91f505051
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
builds.sr.ht/freebsd-x64 Job completed
ci/woodpecker/pr/woodpecker Pipeline was successful
to c291194a4e
All checks were successful
builds.sr.ht/freebsd-x64 Job completed
2026年02月02日 12:41:08 +01:00
Compare
dnkl manually merged commit c291194a4e into master 2026年02月02日 12:41:17 +01:00
Sign in to join this conversation.
No reviewers
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
dnkl/foot!2269
Reference in a new issue
dnkl/foot
No description provided.
Delete branch "pre-apply-damage-crash-on-shutdown"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?