GNU bug report logs -
#28630
27.0.50; C-g while a non-main thread is sitting crashes Emacs
Previous Next
Reported by: Alex <agrambot <at> gmail.com>
Date: Thu, 28 Sep 2017 07:24:01 UTC
Severity: normal
Found in version 27.0.50
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
> Date: Mon, 9 Oct 2017 19:34:28 +0900
> From: mituharu <at> math.s.chiba-u.ac.jp
> Cc: agrambot <at> gmail.com,
> 28630 <at> debbugs.gnu.org,
> tom <at> tromey.com
>
> In both Examples, the main thread is not blocking at pselect, but
> thread-join (sys_cond_wait internally), i.e., without monitoring
> the keyboard descriptor. The secondary one is blocking at pselect
> in sit-for (Example 1) or sleep-for (Example 2). So "none of
> other threads is monitoring the keyboard input channel" part
> becomes true for the secondary thread after returning from
> pselect.
OK, with thread-join this is so. Sorry for missing that part.
In any case, on TTY frames C-g triggers SIGINT, and we always deliver
signals to the main thread. If we want to be able to handle keyboard
input in non-main threads, we should change how signals are handled in
Emacs.
This bug report was last modified 7 years and 284 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.