summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/derived.el5
1 files changed, 3 insertions, 2 deletions
diff --git a/lisp/derived.el b/lisp/derived.el
index a1cfe8485f8..36bf1428125 100644
--- a/lisp/derived.el
+++ b/lisp/derived.el
@@ -255,8 +255,9 @@ which more-or-less shadow
(let* ((map-name (derived-mode-map-name mode))
(new-map (eval map-name))
(old-map (current-local-map)))
- (if (get map-name 'derived-mode-unmerged)
- (derived-mode-merge-keymaps old-map new-map))
+ (and old-map
+ (get map-name 'derived-mode-unmerged)
+ (derived-mode-merge-keymaps old-map new-map))
(put map-name 'derived-mode-unmerged nil)
(use-local-map new-map)))