New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Hang on shutdown #424
Comments
Or is it this code that steals the Lines 895 to 902 in 29bb185
|
I think my first hunch was right. Shutdown sequence:
So |
There are multiple problems here -- I'm going to be redesigning some of this soon. We need to stop using /dev/tty for one. |
In my case this might be mitigated by a fix for #422. That would make me drain the events buffer much faster, making it contain fewer events on average and thus be less likely to be full on shutdown, which is when this lockup happens. |
This bug is actually a dup of #394 -- fix is coming shortly. |
Closing this as a dup of #394. |
Repro instructions
_demos
folder asrepro.go
andgo run repro.go
Current result
When I do this on macOS with the latest
tcell
sources, the numbers screen disappears, but the program never exits. In this state, CTRL-C doesn't work.If I skip the scroll wheel the program exits just fine.
Expected result
Program should shut down nicely.
Code
(butchered from
mouse.go
)Notes
Discovered in walles/moar#37.
For
moar
I came this far in tracking this down:This feels like a deadlock between waiting for events in two different places:
(*tScreen).termioFini() tscreen_darwin.go:106
(*tScreen).PostEventWait(...) tscreen.go:969
Thread dump
Constructed using this trick.
The text was updated successfully, but these errors were encountered: