# HG changeset patch # User Richard M. Stallman # Date 732261296 0 # Node ID 10b84f28f6f2ffc57663d70b51f41c5caaa7842b # Parent d3eca6fffc5cb9e0a349f201156d3d5142431a0f [SIGIO] (UNBLOCK_INPUT): Resignal if x_pending_input. diff -r d3eca6fffc5c -r 10b84f28f6f2 src/xterm.h --- a/src/xterm.h Mon Mar 15 21:41:36 1993 +0000 +++ b/src/xterm.h Tue Mar 16 05:54:56 1993 +0000 @@ -180,8 +180,16 @@ #define BLOCK_INPUT (x_input_blocked++) /* End critical section. */ +#ifdef SIGIO +/* If doing interrupt input, and an interrupt came in when input was blocked, + reinvoke the interrupt handler now to deal with it. */ +#define UNBLOCK_INPUT \ + ((x_input_blocked--, (x_input_blocked < 0 ? (abort (), 0) : 0)), \ + (x_input_blocked == 0 && x_pending_input != 0 ? (kill (0, SIGIO), 0) : 0)) +#else #define UNBLOCK_INPUT \ (x_input_blocked--, (x_input_blocked < 0 ? (abort (), 0) : 0)) +#endif #define TOTALLY_UNBLOCK_INPUT (x_input_blocked = 0) #define UNBLOCK_INPUT_RESIGNAL UNBLOCK_INPUT