Don't re-release gui thread on SIGWINCH
authorJack Miller <jack@codezen.org>
Mon, 8 Aug 2016 22:55:05 +0000 (17:55 -0500)
committerJack Miller <jack@codezen.org>
Mon, 8 Aug 2016 22:55:05 +0000 (17:55 -0500)
commit6e8a3d0001e4eb5aea736b7bcba59a80a0488af4
tree6c2179a197a767ddae74ad54670b582070b34ecc
parent495dd2032b5fff6c765bcf5b186e3fee9b8386f2
Don't re-release gui thread on SIGWINCH

While Python Events are obviously thread safe, they're not reentrant so
from a signal context we have to make sure that if we receive a new
signal before we finish processing the old one, we don't attempt to
set() again and deadlock.

This fixes canto-curses locking when you resize your terminal a few
hundred times a second.
canto_curses/gui.py