Properly clear the last entered character
When enter is pressed, passwd[len] will be set to '\0'. Pressing backspace is supposed to remove the last entered character. But currently, the clearing has an off-by-one, as in setting passwd[len] to '\0' just like enter would do. You can also verify it by imagining len=1 and that it's impossible to clear passwd[0] by pressing backspace with the current code. Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
This commit is contained in:
parent
2d2a21a90a
commit
35633d4567
1 changed files with 1 additions and 1 deletions
2
slock.c
2
slock.c
|
@ -177,7 +177,7 @@ readpw(Display *dpy, struct xrandr *rr, struct lock **locks, int nscreens,
|
|||
break;
|
||||
case XK_BackSpace:
|
||||
if (len)
|
||||
passwd[len--] = '\0';
|
||||
passwd[--len] = '\0';
|
||||
break;
|
||||
default:
|
||||
if (num && !iscntrl((int)buf[0]) &&
|
||||
|
|
Loading…
Reference in a new issue