Re: [RESEND PATCH v3 2/2] cli: Correct handling of invalid escape sequences in cread_line()

Heinrich Schuchardt xypron.glpk at
Thu Mar 30 07:56:42 CEST 2023

Am 29. März 2023 22:02:11 MESZ schrieb Simon Glass <sjg at>:
>Hi Heinrich,
>On Wed, 29 Mar 2023 at 05:43, Heinrich Schuchardt <xypron.glpk at> wrote:
>> On 3/27/23 21:34, Simon Glass wrote:
>> > The second call to cli_ch_process() is in the wrong place, meaning that
>> > the one of the characters of an invalid escape sequence is swallowed
>> > instead of being returned.
>> >
>> > Fix the bug and add a test to cover this.
>> >
>> > This behaviour matches that of the code before cli_getch() was
>> > introduced. This was verified on the commit before b08e9d4b66 i.e.:
>> >
>> >     7d850f85aad ("sandbox: Enable mmc command and legacy images")
>> >
>> > Signed-off-by: Simon Glass <sjg at>
>> > Reported-by: Heinrich Schuchardt <xypron.glpk at>
>> > ---
>> Thanks for the fix. Some strange behavior still remains like
>> <SHIFT><CTRL><F4> giving '6S' on the command line. But at least no error
>> code.
>Yes, this matches the previous behaviour, which has existed a long
>time. We could easily suppress echoing of unknown escape sequence.
>Should we suppress them being entered also, so that U-Boot ignores
>them? I'm really not sure. There was a reverted patch[1] which
>indicates that this is not trivial to figure out.

We already have code in lib/efi_loader/efi_condole.c that supports many more escape sequences. We should deduplicate the code.

Best regards


>[1] d2e64d29c44d cli_readline: Only insert printable chars

More information about the U-Boot mailing list