From 795b1482a9e314cda32d62ac2988f573d359366e Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Sun, 7 Oct 2012 15:48:02 -0400 Subject: [PATCH] * lisp/subr.el (read-passwd-map): Don't use `defconst'. (read-passwd): Remove a few more potential sources of leaks. Fixes: debbugs:12597 --- lisp/ChangeLog | 7 ++++++- lisp/newcomment.el | 4 ++-- lisp/subr.el | 8 ++++++-- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index d873fbbc656..b0f896aa086 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,7 +1,12 @@ +2012-10-07 Stefan Monnier + + * subr.el (read-passwd-map): Don't use `defconst' (bug#12597). + (read-passwd): Remove a few more potential sources of leaks. + 2012-10-07 Fabián Ezequiel Gallina * progmodes/python.el (inferior-python-mode) - (python-shell-make-comint): Fixed initialization of local + (python-shell-make-comint): Fix initialization of local variables copied from parent buffer. 2012-10-07 Jan Djärv diff --git a/lisp/newcomment.el b/lisp/newcomment.el index a7fedf20f53..6d2eed71948 100644 --- a/lisp/newcomment.el +++ b/lisp/newcomment.el @@ -327,8 +327,8 @@ terminated by the end of line (i.e. `comment-end' is empty)." ;;;###autoload (defun comment-normalize-vars (&optional noerror) "Check and setup the variables needed by other commenting functions. -Functions autoloaded from newcomment.el, being entry points, should call -this function before any other, so the rest of the code can assume that +Any command calling functions from newcomment.el, being entry points, should +call this function before any other, so the rest of the code can assume that the variables are properly set." (unless (and (not comment-start) noerror) (unless comment-start diff --git a/lisp/subr.el b/lisp/subr.el index e438a860cbc..ec2d16e6529 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -2143,7 +2143,9 @@ any other non-digit terminates the character code and is then used as input.")) (setq first nil)) code)) -(defconst read-passwd-map +(defvar read-passwd-map + ;; BEWARE: `defconst' would purecopy it, breaking the sharing with + ;; minibuffer-local-map along the way! (let ((map (make-sparse-keymap))) (set-keymap-parent map minibuffer-local-map) (define-key map "\C-u" #'delete-minibuffer-contents) ;bug#12570 @@ -2186,7 +2188,9 @@ by doing (clear-string STRING)." (lambda () (setq minibuf (current-buffer)) ;; Turn off electricity. - (set (make-local-variable 'post-self-insert-hook) nil) + (setq-local post-self-insert-hook nil) + (setq-local buffer-undo-list t) + (setq-local select-active-regions nil) (use-local-map read-passwd-map) (add-hook 'after-change-functions hide-chars-fun nil 'local)) (unwind-protect -- 2.39.2