aboutsummaryrefslogtreecommitdiff
path: root/gdb/event-top.c
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2008-03-05 17:21:10 +0000
committerDaniel Jacobowitz <drow@false.org>2008-03-05 17:21:10 +0000
commitb803fb0f0f7a90ca764d08f93104bc262d63ad40 (patch)
tree6d17bedc4eb5fc95b43dc5c7927924e9e22f742b /gdb/event-top.c
parent7e8064706d5504d9f4f77d94778cd713bfe8cfb1 (diff)
downloadgdb-b803fb0f0f7a90ca764d08f93104bc262d63ad40.zip
gdb-b803fb0f0f7a90ca764d08f93104bc262d63ad40.tar.gz
gdb-b803fb0f0f7a90ca764d08f93104bc262d63ad40.tar.bz2
* Makefile.in (mingw-hdep.o, posix-hdep.o, remote-fileio.o): Update.
* event-loop.c (call_async_signal_handler): New. * event-loop.h (call_async_signal_handler) (gdb_call_async_signal_handler): Declare. (mark_async_signal_handler): Add comments. * event-top.c (handle_sigint): Use gdb_call_async_signal_handler. * mingw-hdep.c (sigint_event, sigint_handler): New. (gdb_select): Use them. Wait for the readline signal handler to finish. (gdb_call_async_signal_handler, _initialize_mingw_hdep): New functions. * posix-hdep.c (gdb_call_async_signal_handler): New function. * remote-fileio.c (sigint_fileio_token, async_remote_fileio_interrupt): New. (remote_fileio_ctrl_c_signal_handler): Use gdb_call_async_signal_handler. (initialize_remote_fileio): Initialize sigint_fileio_token. * remote.c (initialize_sigint_signal_handler, handle_remote_sigint): Do not initialize tokens here. (handle_remote_sigint_twice): Likewise. Reinstall handle_remote_sigint. (async_remote_interrupt_twice): Just call interrupt_query. (cleanup_sigint_signal_handler): Do not delete tokens. (remote_interrupt, remote_interrupt_twice): Use gdb_call_async_signal_handler. (interrupt_query): Reinstall the default signal handler. (_initialize_remote): Initialize tokens here.
Diffstat (limited to 'gdb/event-top.c')
-rw-r--r--gdb/event-top.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/gdb/event-top.c b/gdb/event-top.c
index a3cc15c..f798eee 100644
--- a/gdb/event-top.c
+++ b/gdb/event-top.c
@@ -975,13 +975,9 @@ handle_sigint (int sig)
immediate_quit is set. If we didn't, SIGINT would be really
processed only the next time through the event loop. To get to
that point, though, the command that we want to interrupt needs to
- finish first, which is unacceptable. */
- if (immediate_quit)
- async_request_quit (0);
- else
- /* If immediate quit is not set, we process SIGINT the next time
- through the loop, which is fine. */
- mark_async_signal_handler_wrapper (sigint_token);
+ finish first, which is unacceptable. If immediate quit is not set,
+ we process SIGINT the next time through the loop, which is fine. */
+ gdb_call_async_signal_handler (sigint_token, immediate_quit);
}
/* Quit GDB if SIGTERM is received.