diff options
author | Pedro Alves <palves@redhat.com> | 2016-04-12 16:49:32 +0100 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2016-04-12 17:01:44 +0100 |
commit | 585a46a2d01d25181926329f258f1d1374f93e99 (patch) | |
tree | 7dfe0a9b82a79e729ab41950f46f414a39dbf8b5 /gdb/event-loop.h | |
parent | 048094accce2110432bf7d44c34acc17865cf85a (diff) | |
download | gdb-585a46a2d01d25181926329f258f1d1374f93e99.zip gdb-585a46a2d01d25181926329f258f1d1374f93e99.tar.gz gdb-585a46a2d01d25181926329f258f1d1374f93e99.tar.bz2 |
Eliminate immediate_quit
This finally gets rid of immediate_quit (and surrounding
infrustruture), as nothing sets it anymore.
gdb_call_async_signal_handler was only necessary in order to handle
immediate_quit. We can just call mark_async_signal_handler directly
on all hosts now.
In turn, we can clean up mingw-hdep.c's gdb_select a bit, as
sigint_event / sigint_handler is no longer needed.
gdb/ChangeLog:
2016-04-12 Pedro Alves <palves@redhat.com>
* defs.h: Update comments on SIGINT handling.
(immediate_quit): Delete declaration.
* event-loop.c (call_async_signal_handler): Delete.
* event-loop.h (call_async_signal_handler): Delete declaration.
(mark_async_signal_handler): Update comments.
(gdb_call_async_signal_handler): Delete declaration.
* event-top.c (handle_sigint): Call mark_async_signal_handler
instead of gdb_call_async_signal_handler.
* exceptions.c (prepare_to_throw_exception): Remove reference to
immediate_quit.
(exception_fprintf): Remove comments about immediate_quit.
* mingw-hdep.c (sigint_event, sigint_handler): Delete.
(gdb_select): Don't wait on sigint_event.
(gdb_call_async_signal_handler): Delete.
(_initialize_mingw_hdep): Delete.
* posix-hdep.c (gdb_call_async_signal_handler): Delete.
* utils.c (immediate_quit): Delete.
Diffstat (limited to 'gdb/event-loop.h')
-rw-r--r-- | gdb/event-loop.h | 24 |
1 files changed, 3 insertions, 21 deletions
diff --git a/gdb/event-loop.h b/gdb/event-loop.h index 155dafa..7159d97 100644 --- a/gdb/event-loop.h +++ b/gdb/event-loop.h @@ -91,16 +91,9 @@ extern int create_timer (int milliseconds, gdb_client_data client_data); extern void delete_timer (int id); -/* Call the handler from HANDLER immediately. This function - runs signal handlers when returning to the event loop would be too - slow. Do not call this directly; use gdb_call_async_signal_handler, - below, with IMMEDIATE_P == 1. */ -void call_async_signal_handler (struct async_signal_handler *handler); - -/* Call the handler from HANDLER the next time through the event loop. - Do not call this directly; use gdb_call_async_signal_handler, - below, with IMMEDIATE_P == 0. */ -void mark_async_signal_handler (struct async_signal_handler *handler); +/* Call the handler from HANDLER the next time through the event + loop. */ +extern void mark_async_signal_handler (struct async_signal_handler *handler); /* Returns true if HANDLER is marked ready. */ @@ -111,17 +104,6 @@ extern int extern void clear_async_signal_handler (struct async_signal_handler *handler); -/* Wrapper for the body of signal handlers. Call this function from - any SIGINT handler which needs to access GDB data structures or - escape via longjmp. If IMMEDIATE_P is set, this triggers either - immediately (for POSIX platforms), or from gdb_select (for - MinGW). If IMMEDIATE_P is clear, the handler will run the next - time we return to the event loop and any current select calls - will be interrupted. */ - -void gdb_call_async_signal_handler (struct async_signal_handler *handler, - int immediate_p); - /* Create and register an asynchronous event source in the event loop, and set PROC as its callback. CLIENT_DATA is passed as argument to PROC upon its invocation. Returns a pointer to an opaque structure |