]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/subr.el (read-passwd): Hide chars even when called within a context
authorStefan Monnier <monnier@iro.umontreal.ca>
Fri, 4 Oct 2013 19:06:45 +0000 (15:06 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Fri, 4 Oct 2013 19:06:45 +0000 (15:06 -0400)
where after-change-functions is disabled.
(set-temporary-overlay-map): Don't remove oneself from pre-command-hook
until we removed ourself from overriding-terminal-local-map.

Fixes: debbugs:15501
lisp/ChangeLog
lisp/subr.el

index bfa36ffe4415d7e9b9b9610c34cad8a913b0c6bd..253f90278cd909e5dfc8ccb82d89d31180f0b76f 100644 (file)
@@ -1,7 +1,14 @@
+2013-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * subr.el (read-passwd): Hide chars even when called within a context
+       where after-change-functions is disabled (bug#15501).
+       (set-temporary-overlay-map): Don't remove oneself from pre-command-hook
+       until we removed ourself from overriding-terminal-local-map.
+
 2013-10-04  Leo Liu  <sdl.web@gmail.com>
 
-       * progmodes/octave.el (inferior-octave-mode): Call
-       compilation-forget-errors.
+       * progmodes/octave.el (inferior-octave-mode):
+       Call compilation-forget-errors.
 
 2013-10-04  Xue Fuqiao  <xfq.free@gmail.com>
 
index ba953656b81f6f8066c554415e72bde62feb3778..0d03e9a88c1166d417866555636611515bac6025 100644 (file)
@@ -2104,6 +2104,7 @@ by doing (clear-string STRING)."
             (setq-local buffer-undo-list t)
             (setq-local select-active-regions nil)
             (use-local-map read-passwd-map)
+            (setq-local inhibit-modification-hooks nil) ;bug#15501.
             (add-hook 'after-change-functions hide-chars-fun nil 'local))
         (unwind-protect
             (let ((enable-recursive-minibuffers t))
@@ -4394,14 +4395,15 @@ deactivation of MAP."
             ;; suspended during the C-u one so we don't exit isearch just
             ;; because we hit 1 after C-u and that 1 exits isearch whereas it
             ;; doesn't exit C-u.
-            (unless (cond ((null keep-pred) nil)
-                          ((eq t keep-pred)
-                           (eq this-command
-                               (lookup-key map (this-command-keys-vector))))
-                          (t (funcall keep-pred)))
-              (remove-hook 'pre-command-hook clearfun)
-              (internal-pop-keymap map 'overriding-terminal-local-map)
-              (when on-exit (funcall on-exit)))))
+            (with-demoted-errors "set-temporary-overlay-map PCH: %S"
+              (unless (cond ((null keep-pred) nil)
+                            ((eq t keep-pred)
+                             (eq this-command
+                                 (lookup-key map (this-command-keys-vector))))
+                            (t (funcall keep-pred)))
+                (internal-pop-keymap map 'overriding-terminal-local-map)
+                (remove-hook 'pre-command-hook clearfun)
+                (when on-exit (funcall on-exit))))))
     (add-hook 'pre-command-hook clearfun)
     (internal-push-keymap map 'overriding-terminal-local-map)))