Bug fix: Call clear_input() when the password is wrong.

clear_input() calls start_clear_indicator_timeout() to clear the
indicator after 1 second. This had as a result the screen to be cleared
when the "verifying…" message was showed, so the "wrong!" message didn't
show up when the password was wrong.

First bad commit: a305e62
pull/1/head
oblique 2013-10-17 13:35:33 +03:00 committed by Michael Stapelberg
parent a305e622a6
commit 33d953fbdf
1 changed files with 1 additions and 1 deletions

View File

@ -205,6 +205,7 @@ static void auth_failed(void) {
fprintf(stderr, "Authentication failure\n");
pam_state = STATE_PAM_WRONG;
clear_input();
redraw_screen();
/* Clear this state after 2 seconds (unless the user enters another
@ -258,7 +259,6 @@ static void input_done(void) {
if (cpid == 0) {
exit(pam_authenticate(pam_handle, 0) == PAM_SUCCESS);
} else if (cpid > 0) {
clear_input();
struct ev_child *child_watcher = calloc(sizeof(struct ev_io), 1);
ev_child_init(child_watcher, child_cb, cpid, 0);
ev_child_set(child_watcher, cpid, 0);