forked from Imagelibrary/binutils-gdb
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.
This commit is contained in:
@@ -901,18 +901,11 @@ handle_sigint (int sig)
|
||||
it may be quite a while before we get back to the event loop. So
|
||||
set quit_flag to 1 here. Then if QUIT is called before we get to
|
||||
the event loop, we will unwind as expected. */
|
||||
|
||||
set_quit_flag ();
|
||||
|
||||
/* If immediate_quit is set, we go ahead and process the SIGINT right
|
||||
away, even if we usually would defer this to the event loop. The
|
||||
assumption here is that it is safe to process ^C immediately if
|
||||
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 is not set,
|
||||
we process SIGINT the next time through the loop, which is fine. */
|
||||
gdb_call_async_signal_handler (sigint_token, immediate_quit);
|
||||
/* In case nothing calls QUIT before the event loop is reached, the
|
||||
event loop handles it. */
|
||||
mark_async_signal_handler (sigint_token);
|
||||
}
|
||||
|
||||
/* See gdb_select.h. */
|
||||
|
||||
Reference in New Issue
Block a user