
Hi Heinrich,
On Wed, 29 Mar 2023 at 05:43, Heinrich Schuchardt xypron.glpk@gmx.de 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@chromium.org Reported-by: Heinrich Schuchardt xypron.glpk@gmx.de
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.
Regards, Simon
[1] d2e64d29c44d cli_readline: Only insert printable chars