aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenichi Handa1999-02-01 02:52:34 +0000
committerKenichi Handa1999-02-01 02:52:34 +0000
commit8024de4585cccf89b54addf5e045b6830ae3244d (patch)
treefdd2df8042425acd42f638631ed56bd87c22ca15
parent7fef47a3894718ee161a88141b1b465fda13955a (diff)
downloademacs-8024de4585cccf89b54addf5e045b6830ae3244d.tar.gz
emacs-8024de4585cccf89b54addf5e045b6830ae3244d.zip
(quail-lookup-key): If cdr of MAP is a
function, replace cdr of MAP by the return value of the function unconditionally.
-rw-r--r--lisp/international/quail.el10
1 files changed, 4 insertions, 6 deletions
diff --git a/lisp/international/quail.el b/lisp/international/quail.el
index 83c24084b20..d873907e3a2 100644
--- a/lisp/international/quail.el
+++ b/lisp/international/quail.el
@@ -856,12 +856,10 @@ The returned value is a Quail map specific to KEY."
856 (progn 856 (progn
857 (setq quail-current-translations translation) 857 (setq quail-current-translations translation)
858 (if (quail-forget-last-selection) 858 (if (quail-forget-last-selection)
859 (setcar (car quail-current-translations) 0)))) 859 (setcar (car quail-current-translations) 0))))))
860 ;; We may have to reform cdr part of MAP. 860 ;; We may have to reform cdr part of MAP.
861 (if (and (cdr map) (symbolp (cdr map))) 861 (if (and (cdr map) (functionp (cdr map)))
862 (progn 862 (setcdr map (funcall (cdr map) key len)))
863 (setcdr map (funcall (cdr map) key len))))
864 ))
865 map)) 863 map))
866 864
867(put 'quail-error 'error-conditions '(quail-error error)) 865(put 'quail-error 'error-conditions '(quail-error error))