mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-15 10:30:25 -08:00
* lisp/subr.el (read-passwd): Hide chars even when called within a context
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
This commit is contained in:
parent
939fb29cd9
commit
258ab3bc88
2 changed files with 19 additions and 10 deletions
18
lisp/subr.el
18
lisp/subr.el
|
|
@ -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)))
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue