diff options
author | Kim F. Storm <storm@cua.dk> | 2004-11-23 15:23:57 +0000 |
---|---|---|
committer | Kim F. Storm <storm@cua.dk> | 2004-11-23 15:23:57 +0000 |
commit | d9f043554d8e441cf3eff5e14d25c0111792a93e (patch) | |
tree | c4d116e2079b67ad010a17ba3b2d1906d865c415 | |
parent | 92c8c0ce0b4910b3c77613b1e6a7120b93566d40 (diff) | |
download | emacs-d9f043554d8e441cf3eff5e14d25c0111792a93e.tar.gz |
(substitute-key-definition-key): Optimize. Don't
call indirect-function for nil defn (always signals error).
-rw-r--r-- | lisp/subr.el | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lisp/subr.el b/lisp/subr.el index b40c64c63eb..6d8ebeec22b 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -422,7 +422,8 @@ For most uses, it is simpler and safer to use command remappping like this: (nconc (nreverse skipped) newdef))) ;; Look past a symbol that names a keymap. (setq inner-def - (condition-case nil (indirect-function defn) (error defn))) + (and defn + (condition-case nil (indirect-function defn) (error defn)))) ;; For nested keymaps, we use `inner-def' rather than `defn' so as to ;; avoid autoloading a keymap. This is mostly done to preserve the ;; original non-autoloading behavior of pre-map-keymap times. |