changeset 12824:9302372b1ec1

(isearch-other-meta-char): Avoid bug checking whether a key is defined in the function key map. Call cancel-kbd-macro-events.
author Richard M. Stallman <rms@gnu.org>
date Thu, 10 Aug 1995 23:19:22 +0000
parents c1fcd8660aba
children cbc13edaa77d
files lisp/isearch.el
diffstat 1 files changed, 5 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/isearch.el	Thu Aug 10 22:44:21 1995 +0000
+++ b/lisp/isearch.el	Thu Aug 10 23:19:22 1995 +0000
@@ -1007,12 +1007,14 @@
 	 (main-event (aref key 0))
 	 (keylist (listify-key-sequence key)))
     (cond ((and (= (length key) 1)
-		(lookup-key function-key-map key))
+		(let ((lookup (lookup-key function-key-map key)))
+		  (not (or (null lookup) (integerp lookup)))))
 	   ;; Handle a function key that translates into something else.
 	   ;; If the key has a global definition too,
 	   ;; exit and unread the key itself, so its global definition runs.
 	   ;; Otherwise, unread the translation,
 	   ;; so that the translated key takes effect within isearch.
+	   (cancel-kbd-macro-events)
 	   (if (lookup-key global-map key)
 	       (progn 
 		 (isearch-done)
@@ -1035,12 +1037,14 @@
 				copy)
 			      nil)))
 	   (setcar keylist (- main-event (- ?\C-\S-a ?\C-a)))
+	   (cancel-kbd-macro-events)
 	   (apply 'isearch-unread keylist))
 	  ((eq search-exit-option 'edit)
 	   (apply 'isearch-unread keylist)
 	   (isearch-edit-string))
 	  (search-exit-option
 	   (let (window)
+	     (cancel-kbd-macro-events)
 	     (apply 'isearch-unread keylist)
 	     ;; Properly handle scroll-bar and mode-line clicks
 	     ;; for which a dummy prefix event was generated as (aref key 0).