This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PUSHED] PR gdb/17096: async support breaks remote debugging on Windows
- From: Joel Brobecker <brobecker at adacore dot com>
- To: Pedro Alves <palves at redhat dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Mon, 7 Jul 2014 13:30:02 -0700
- Subject: Re: [PUSHED] PR gdb/17096: async support breaks remote debugging on Windows
- Authentication-results: sourceware.org; auth=none
- References: <1404756790-6767-1-git-send-email-palves at redhat dot com>
> gdb/
> 2014-07-07 Pedro Alves <palves@redhat.com>
>
> gdb/17096
> * remote.c (async_handle_remote_sigint)
> (async_handle_remote_sigint_twice): Call
> gdb_call_async_signal_handler instead of
> mark_async_signal_handler.
It looks like the remote.c patch was missing, and since I looked it
up to take a look, I thought I might as well provide it here as well!
Thanks for working on this one, Pedro.
--
Joel
diff --git a/gdb/remote.c b/gdb/remote.c
index b6f3ddb..3aa030c 100644
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -4818,7 +4818,9 @@ static void
async_handle_remote_sigint (int sig)
{
signal (sig, async_handle_remote_sigint_twice);
- mark_async_signal_handler (async_sigint_remote_token);
+ /* Note we need to go through gdb_call_async_signal_handler in order
+ to wake up the event loop on Windows. */
+ gdb_call_async_signal_handler (async_sigint_remote_token, 0);
}
/* Signal handler for SIGINT, installed after SIGINT has already been
@@ -4828,7 +4830,8 @@ static void
async_handle_remote_sigint_twice (int sig)
{
signal (sig, async_handle_remote_sigint);
- mark_async_signal_handler (async_sigint_remote_twice_token);
+ /* See note in async_handle_remote_sigint. */
+ gdb_call_async_signal_handler (async_sigint_remote_twice_token, 0);
}
/* Perform the real interruption of the target execution, in response