]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix Bug#24149
authorStefan Monnier <monnier@iro.umontreal.ca>
Thu, 4 Aug 2016 15:39:28 +0000 (23:39 +0800)
committerLeo Liu <sdl.web@gmail.com>
Thu, 4 Aug 2016 15:42:07 +0000 (23:42 +0800)
* lisp/subr.el (set-transient-map): Don't wait if MAP not present in
overriding-terminal-local-map.  (Bug#24149)

lisp/subr.el

index 2c0be204e0ab606e55d54d0d72736ab4cecc7a4f..aa9b7510755015e26f53ddeef92912ec39b6431e 100644 (file)
@@ -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.