Repository navigation
fix: crash when GTK drawing window - #55
Conversation
sorrycc
left a comment
There was a problem hiding this comment.
Thanks, the diagnosis matches the log in #51. On Linux, installMenu destroys the menu bar, a child of the window's box, and Mayoi sets the menu from its frame, so the box could lose that child while drawing it. That fits the gtk_container_propagate_draw assertions right before the SIGSEGV. Queuing the update through RunOnMain (g_idle_add) moves it out of the draw, and the revision check keeps updates that arrive out of order from going stale. The test passes and the linux/amd64 build is clean. I merged main and reworded the changelog line for users. Marking ready and merging. @BabyLy233, please tell us if the next release still crashes.
|
@sorrycc Awesome thank you. This is very great software. Have a nice day. |
Fix: Linux menu replacement during GTK drawing
Description:
Defer native menu updates until after GTK finishes drawing, avoiding destruction of widgets GTK may still be traversing. Discard stale queued updates so the latest menu stays active.
Potential fix for #51 Fedora reproduction still needs verification.
Validation:
go test -short ./...passed.CHANGELOG.md.