diff options
Diffstat (limited to 'gdb/event-top.c')
-rw-r--r-- | gdb/event-top.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gdb/event-top.c b/gdb/event-top.c index eb4f0b9..a119fe9 100644 --- a/gdb/event-top.c +++ b/gdb/event-top.c @@ -403,6 +403,15 @@ stdin_event_handler (int error, gdb_client_data client_data) } else { + /* This makes sure a ^C immediately followed by further input is + always processed in that order. E.g,. with input like + "^Cprint 1\n", the SIGINT handler runs, marks the async signal + handler, and then select/poll may return with stdin ready, + instead of -1/EINTR. The + gdb.base/double-prompt-target-event-error.exp test exercises + this. */ + QUIT; + do { call_stdin_event_handler_again_p = 0; |