From 4fd15622e64cceb41dab27e0ffcfdcb8c4090861 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Wed, 19 Aug 2009 19:42:25 +0000 Subject: [PATCH] (read-passwd): Use read-key so keypad keys work as well. --- lisp/ChangeLog | 2 ++ lisp/subr.el | 6 ++---- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 584cef20192..d8ffb2e9169 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,7 @@ 2009-08-19 Stefan Monnier + * subr.el (read-passwd): Use read-key so keypad keys work as well. + * help.el (help-print-return-message): Rename from print-help-return-message. diff --git a/lisp/subr.el b/lisp/subr.el index 668b323fbc0..f2709f3b777 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -1905,10 +1905,7 @@ by doing (clear-string STRING)." (while (progn (message "%s%s" prompt (make-string (length pass) ?.)) - ;; We used to use read-char-exclusive, but that - ;; gives funny behavior when the user presses, - ;; e.g., the arrow keys. - (setq c (read-event nil t)) + (setq c (read-key)) (not (memq c stop-keys))) (clear-this-command-keys) (cond ((memq c rubout-keys) ; rubout @@ -1916,6 +1913,7 @@ by doing (clear-string STRING)." (let ((new-pass (substring pass 0 -1))) (and (arrayp pass) (clear-string pass)) (setq pass new-pass)))) + ((eq c ?\C-g) (keyboard-quit)) ((not (numberp c))) ((= c ?\C-u) ; kill line (and (arrayp pass) (clear-string pass)) -- 2.39.2