summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2011-07-15 18:53:39 -0400
committerGlenn Morris <rgm@gnu.org>2011-07-15 18:53:39 -0400
commit6ccf7859d6814efcfe7745e1fdd4a2b5964a8952 (patch)
tree70c4061e33f1053bd8786ef65a7cce29a6ed9caa
parent4baf28e6167c7925d0caf10388eb5b2020709480 (diff)
downloademacs-6ccf7859d6814efcfe7745e1fdd4a2b5964a8952.tar.gz
* lisp/subr.el (read-char-choice): Allow quitting. (Bug#9001)
-rw-r--r--lisp/ChangeLog4
-rw-r--r--lisp/subr.el4
2 files changed, 7 insertions, 1 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 6bfdb61330b..1a2c8daed5b 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,7 @@
+2011-07-15 Glenn Morris <rgm@gnu.org>
+
+ * subr.el (read-char-choice): Allow quitting. (Bug#9001)
+
2011-07-09 Lawrence Mitchell <wence@gmx.li>
* net/gnutls.el (gnutls-min-prime-bits): New variable.
diff --git a/lisp/subr.el b/lisp/subr.el
index 94b28c007d1..d462283b7bd 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -2161,7 +2161,9 @@ keyboard-quit events while waiting for a valid input."
;; read-event returns -1 if we are in a kbd macro and
;; there are no more events in the macro. Attempt to
;; get an event interactively.
- (setq executing-kbd-macro nil)))))
+ (setq executing-kbd-macro nil))
+ ((and (not inhibit-keyboard-quit) (eq char ?\C-g))
+ (keyboard-quit)))))
;; Display the question with the answer. But without cursor-in-echo-area.
(message "%s%s" prompt (char-to-string char))
char))