I've been looking at ticket #3875, and realized I didn't quite understand the behavior of getch() with respect to timeout() and SIGWINCH.
Mutt installs its own SIGWINCH handler, turning off the default ncurses one. However, it looks like setting a positive timeout() makes the getch() abort and return ERR both for the timeout and for any SIGWINCH. This is why km_dokey() is able to abort and handle a resize redraw immediately while a mutt_yesorno() prompt does not abort on a resize. It looks like mutt relies on this, but I was a bit surprised to debug and figure this out. Is this documented/expected behavior? -- Kevin J. McCarthy GPG Fingerprint: 8975 A9B3 3AA3 7910 385C 5308 ADEF 7684 8031 6BDA
signature.asc
Description: PGP signature