Re: [PING^2][PATCH][PR gdb/21690] Fix interruption of command history search

Hannes Domani
2020-06-08T14:59:19Z

Am Montag, 8. Juni 2020, 16:41:32 MESZ hat Andrew Burgess <andrew.burgess@embecosm.com> Folgendes geschrieben:

> * Hannes Domani via Gdb-patches <gdb-patches@sourceware.org> [2020-06-08 11:51:07 +0000]:
>
> > Ping.
> >
> > Am Freitag, 15. Mai 2020, 11:00:41 MESZ hat Hannes Domani via Gdb-patches <gdb-patches@sourceware.org> Folgendes geschrieben:
> >
> > > Am Samstag, 25. April 2020, 19:17:34 MESZ hat Hannes Domani via Gdb-patches <gdb-patches@sourceware.org> Folgendes geschrieben:
> > >
> > > Ping.
> > >
> > > > If you press Ctrl-C during an incremental search of the readline history, the
> > > > prompt is reset, but readline is still in the incremental search mode.
> > > >
> > > > The call of rl_callback_sigcleanup cleans up the internal readline state, and
> > > > disables the incremental search mode.
>
> I didn't look into the implementation of this, but something seems a
> little odd, though I don't know if this is just my machine setup....
>
> I start a GDB session, and do this:
>
>   (gdb) echo hello\n
>   hello
>
> At this point I start a reverse search, so I type:
>
>   <ctrl+r>
>   echo
>   <ctrl+c>
>
> Now I'm left in this situation:
>
>   (gdb) echo hello\n
>         ^
>         '-- Prompt is here.
>
> So, whatever I was in the process of finding when I hit Ctrl+C is left
> on my prompt line in an editable state.
>
> This is different from the behaviour I see in, for example, bash,
> where when I Ctrl+C the reverse search is aborted and I'm dropped back
> to an empty prompt.
>
> Which behaviour do you see?

This is the behaviour I also see with this patch applied.

> Which behaviour do you expect to see?

I didn't compare with anything else, so my expectation was just that it
shouldn't be in this weird state where the prompt is empty, but readline
actually thinks it's still in the reverse search.

Hannes