This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH] Readline: Cleanup some warnings
- From: Tom Tromey <tom at tromey dot com>
- To: Eli Zaretskii <eliz at gnu dot org>
- Cc: Tom Tromey <tom at tromey dot com>, palves at redhat dot com, gdb-patches at sourceware dot org
- Date: Tue, 19 Mar 2019 10:04:48 -0600
- Subject: Re: [PATCH] Readline: Cleanup some warnings
- References: <20190130085716.75179-1-alan.hayward@arm.com> <20190131075907.GA313@adacore.com> <F71F4EDA-CBDF-4B05-B9C2-588D02471EB2@arm.com> <3463805B-A8BF-4C20-ACE3-C21AE3F7DB62@arm.com> <20190201080533.GA31043@adacore.com> <877eejvfoq.fsf@tromey.com> <1549047248.2630.7.camel@skynet.be> <310315f8-62ab-2eff-042f-9f2ae9de07da@redhat.com> <87wokxtnlt.fsf@tromey.com> <83h8c1wdr5.fsf@gnu.org>
>>>>> "Eli" == Eli Zaretskii <eliz@gnu.org> writes:
>> From: Tom Tromey <tom@tromey.com>
>> Cc: "gdb-patches\@sourceware.org" <gdb-patches@sourceware.org>
>> Date: Sun, 17 Mar 2019 11:30:38 -0600
>>
>> I still don't really know what to do about the readline-related hack in
>> the mingw gdb_select. I'd like to remove it, but I can't test it and I
>> don't know whether it's still needed.
Eli> Can someone point me to the PR that led to that hack? I'd like to see
Eli> what happens in that use case and why is this code needed to solve it.
Eli> (I tried "git annotate", but that didn't tell me anything interesting
Eli> about the history of that snippet. Apologies if I missed something.)
All I know is what annotate says. The commit message is appended.
Here's the gdb-patches thread about it:
https://sourceware.org/ml/gdb-patches/2008-02/msg00423.html
Tom
commit b803fb0f0f7a90ca764d08f93104bc262d63ad40
Author: Daniel Jacobowitz <drow@false.org>
Date: Wed Mar 5 17:21:10 2008 +0000
* 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.