Martin Panter added the comment:

Hi Michiel, if you are looking for the source of 
<https://docs.python.org/dev/c-api/veryhigh.html#c.PyOS_InputHook>, that 
corresponds to Doc/c-api/veryhigh.rst in the repository.

This bug would be fairly easy to solve for “tkinter” if we could drop the 
Tcl_DoOneEvent(0) half of the code, and always use the TCL_DONT_WAIT polling 
instead. Then the event hook could return if there were no immediate events, 
and it would be up to readline() or whatever to check for interrupts or input, 
or loop back to PyOS_InputHook() after a small delay.

Otherwise, I think we need to come up with a way to inject an event into a TCL 
event queue when there is a signal that needs handling. If this were possible, 
it would also fix the SIGINT responsiveness from Tk.mainloop() etc. Or it would 
be nice if there was a Tcl_DoOneEvent(WAIT_UNTIL_INTERRUPTED_BY_A_SIGNAL) 
option.

A possible test case for this bug would reopen stdin to something harmless, set 
a SIGALRM handler, and call input(). The signal should eventually cause input() 
to raise an exception.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue23237>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to