grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH v2] Fix backspace in the username login prompt


From: Egor Ignatov
Subject: [PATCH v2] Fix backspace in the username login prompt
Date: Tue, 11 May 2021 09:52:39 +0300

This patch fixes a bug when backspace key does not work in the
username login prompt. It allows backspace characters in the BIDI
visual line. Thus grub_gfxterm_putchar receives '\b' chars that
were previously ignored.

Signed-off-by: Egor Ignatov <egori@altlinux.org>
---
> Did you test this patch with other BIDI type BN characters [1]? I am not

You are right, I added a check to handle only backspace characters

> convinced it works with them as expected. I think earlier version of your
> patch was more promising...

Earlier versions of my patch included workaround for special case when
the password is longer than one line. This scenario is not very
realistic and I dont think it's worth complicating the codebase.

Thank you for your response.
Let me know if you have any concerns about this version.

Egor

 grub-core/normal/charset.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/grub-core/normal/charset.c b/grub-core/normal/charset.c
index 4dfcc3107..8e7add1f8 100644
--- a/grub-core/normal/charset.c
+++ b/grub-core/normal/charset.c
@@ -931,6 +931,8 @@ grub_bidi_line_logical_to_visual (const grub_uint32_t 
*logical,
            pop_stack ();
            break;
          case GRUB_BIDI_TYPE_BN:
+           if (visual[visual_len].base == '\b')
+             visual_len++;
            break;
          case GRUB_BIDI_TYPE_R:
          case GRUB_BIDI_TYPE_AL:
-- 
2.29.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]