mirror of
https://gitlab.com/embeddable-common-lisp/ecl.git
synced 2026-01-17 06:42:18 -08:00
The interrupt function terminal-interrupt ignores the signal servicing thread
This commit is contained in:
parent
979d60834f
commit
92fd2856ba
1 changed files with 3 additions and 2 deletions
|
|
@ -509,7 +509,8 @@ Use special code 0 to cancel this operation.")
|
|||
(loop with this = mp:*current-process*
|
||||
for p in (mp:all-processes)
|
||||
unless (or (eq p this)
|
||||
(eq (mp:process-name p) 'si::handle-signal))
|
||||
(member (mp:process-name p)
|
||||
'(si:signal-servicing si::handle-signal)))
|
||||
collect p)))
|
||||
(when (and (= (length all-processes) 1) *interrupt-lonely-threads-p*)
|
||||
(mp:interrupt-process (first all-processes)
|
||||
|
|
@ -520,7 +521,7 @@ Use special code 0 to cancel this operation.")
|
|||
(push i suspended)
|
||||
(mp:process-suspend i)))
|
||||
(flet ((do-query-process ()
|
||||
(print all-processes)
|
||||
(print all-processes)
|
||||
(query-process all-processes)))
|
||||
(mp:with-local-interrupts
|
||||
(restart-case (simple-terminal-interrupt)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue