[PATCH 1/1] common: remove "impossible condition #876" message

Heinrich Schuchardt heinrich.schuchardt at canonical.com
Tue Jan 31 02:50:31 CET 2023


On 1/30/23 16:50, Simon Glass wrote:
> Hi Heinrich,
> 
> On Sun, 29 Jan 2023 at 15:32, Heinrich Schuchardt
> <heinrich.schuchardt at canonical.com> wrote:
>>
>> Function cli_ch_esc() supports only a small subset of the escape sequences
>> used by terminals. Don't nag the user with a message if an unsupported
>> escape sequence is met.
>>
>> Fixes: b08e9d4b6632 ("cli: Move readline character-processing to a state machine")
>> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
>> ---
>>   common/cli_getch.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> The bug is in the calling code, though. See my previous email.

Your patch introduced further problems:

b08e9d4b6632 ("cli: Move readline character-processing to a state machine")

At git commit b08e9d4b6632 in sandbox_defconfig at the command line enter

abc<PG-UP><PG-DOWN><PG-UP><PG-DOWN><ENTER>

and you get a crash.

With origin/master at the command line enter

abc<PG-UP><PG-DOWN><PG-UP><PG-DOWN><ENTER>

and the output is:

=> abcimpossible condition #876
~impossible condition #876
~impossible condition #876
~impossible condition #876
~
Unknown command 'abc~~~~' - try 'help'
=>

Before the patch entering

abc<PG-UP><PG-DOWN><PG-UP><PG-DOWN><ENTER>

results in:

=> abc
Unknown command 'abc' - try 'help'
=>

This is what is expected. Please, restore this behavior.

Best regards

Heinrich

> 
>>
>> diff --git a/common/cli_getch.c b/common/cli_getch.c
>> index 87c23edcf4..ebda3a1236 100644
>> --- a/common/cli_getch.c
>> +++ b/common/cli_getch.c
>> @@ -198,7 +198,7 @@ int cli_ch_process(struct cli_ch_state *cch, int ichar)
>>                          cch->esc_save[cch->esc_len] = ichar;
>>                          cch->esc_len = 1;
>>                  } else {
>> -                       puts("impossible condition #876\n");
>> +                       /* TODO: support more escape sequences */
>>                          cch->esc_len = 0;
>>                  }
>>                  return 0;
>> --
>> 2.38.1
>>
> 
> Regards,
> Simon



More information about the U-Boot mailing list