ChezScheme
ChezScheme copied to clipboard
Keyboard interrupts not handled in threaded console input port
In io.ss, the threaded versions wrap console input in a with-tc-mutex form, which disables interrupts. The console input port uses a check-interrupt macro that calls $event when there's an interrupt. $event, however, won't do anything when interrupts are disabled.
On Unix-like platforms, one must press CTRL-C twice to get the interrupt to process. The second time the C code calls S_noncontinuable_interrupt.
Is there an easy way to handle keyboard interrupts better in the threaded versions?