summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2016-08-04 23:39:28 +0800
committerLeo Liu <sdl.web@gmail.com>2016-08-04 23:42:07 +0800
commit847140163a38af9f429c807f28be023dea9166cf (patch)
tree02bd32c7c946a993864e63d7ada54d5ab95063c5
parent7f9721d3990155bae83e4e4840f0ff4913868d50 (diff)
downloademacs-847140163a38af9f429c807f28be023dea9166cf.tar.gz
Fix Bug#24149
* lisp/subr.el (set-transient-map): Don't wait if MAP not present in overriding-terminal-local-map. (Bug#24149)
-rw-r--r--lisp/subr.el3
1 files changed, 2 insertions, 1 deletions
diff --git a/lisp/subr.el b/lisp/subr.el
index 2c0be204e0a..aa9b7510755 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -4542,7 +4542,8 @@ to deactivate this transient map, regardless of KEEP-PRED."
(with-demoted-errors "set-transient-map PCH: %S"
(unless (cond
((null keep-pred) nil)
- ((not (eq map (cadr overriding-terminal-local-map)))
+ ((and (not (eq map (cadr overriding-terminal-local-map)))
+ (memq map (cddr overriding-terminal-local-map)))
;; There's presumably some other transient-map in
;; effect. Wait for that one to terminate before we
;; remove ourselves.