diff options
| author | Kenichi Handa | 2012-05-03 15:57:54 +0900 |
|---|---|---|
| committer | Kenichi Handa | 2012-05-03 15:57:54 +0900 |
| commit | 1f110951b52c0d7705dd5891368efccbce95ec1a (patch) | |
| tree | 5d9683724eb455e9bcb8030fb61114b2e559457b /lisp | |
| parent | 2e51d4b5fb960ce0240a0eccbb0ed30cc7f53743 (diff) | |
| parent | 2bd785a208c84e7ae73884d09a1087da52780b4a (diff) | |
| download | emacs-1f110951b52c0d7705dd5891368efccbce95ec1a.tar.gz emacs-1f110951b52c0d7705dd5891368efccbce95ec1a.zip | |
merge trunk
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/ChangeLog | 12 | ||||
| -rw-r--r-- | lisp/custom.el | 2 | ||||
| -rw-r--r-- | lisp/emacs-lisp/bytecomp.el | 14 | ||||
| -rw-r--r-- | lisp/subr.el | 29 |
4 files changed, 32 insertions, 25 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index d35f5475bbc..ff2c5a40787 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -4,6 +4,18 @@ | |||
| 4 | decoding, and show a warning message without signalling an error | 4 | decoding, and show a warning message without signalling an error |
| 5 | (Bug#11282). | 5 | (Bug#11282). |
| 6 | 6 | ||
| 7 | 2012-05-03 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 8 | |||
| 9 | * emacs-lisp/bytecomp.el | ||
| 10 | (byte-compile-file-form-custom-declare-variable): Compile all elements, | ||
| 11 | since cconv.el might have introduced :fun-body, internal-make-closure, | ||
| 12 | and friends for bytecomp to handle (bug#11391). | ||
| 13 | * custom.el (defcustom): Avoid ((λ ..) ..). | ||
| 14 | |||
| 15 | 2012-05-02 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 16 | |||
| 17 | * subr.el (read-passwd): Better clean after ourselves (bug#11392). | ||
| 18 | |||
| 7 | 2012-05-02 Juanma Barranquero <lekktu@gmail.com> | 19 | 2012-05-02 Juanma Barranquero <lekktu@gmail.com> |
| 8 | 20 | ||
| 9 | * notifications.el (dbus-debug): | 21 | * notifications.el (dbus-debug): |
diff --git a/lisp/custom.el b/lisp/custom.el index 611d5688f30..d0eadcc23ff 100644 --- a/lisp/custom.el +++ b/lisp/custom.el | |||
| @@ -335,7 +335,7 @@ for more information." | |||
| 335 | ;; expression is checked by the byte-compiler, and that | 335 | ;; expression is checked by the byte-compiler, and that |
| 336 | ;; lexical-binding is obeyed, so quote the expression with | 336 | ;; lexical-binding is obeyed, so quote the expression with |
| 337 | ;; `lambda' rather than with `quote'. | 337 | ;; `lambda' rather than with `quote'. |
| 338 | `(list (lambda () ,standard)) | 338 | ``(funcall #',(lambda () ,standard)) |
| 339 | `',standard) | 339 | `',standard) |
| 340 | ,doc | 340 | ,doc |
| 341 | ,@args)) | 341 | ,@args)) |
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 93c6518d215..9cb0a376e36 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el | |||
| @@ -2267,19 +2267,7 @@ list that represents a doc string reference. | |||
| 2267 | (when (byte-compile-warning-enabled-p 'callargs) | 2267 | (when (byte-compile-warning-enabled-p 'callargs) |
| 2268 | (byte-compile-nogroup-warn form)) | 2268 | (byte-compile-nogroup-warn form)) |
| 2269 | (push (nth 1 (nth 1 form)) byte-compile-bound-variables) | 2269 | (push (nth 1 (nth 1 form)) byte-compile-bound-variables) |
| 2270 | ;; Don't compile the expression because it may be displayed to the user. | 2270 | (byte-compile-keep-pending form)) |
| 2271 | ;; (when (eq (car-safe (nth 2 form)) 'quote) | ||
| 2272 | ;; ;; (nth 2 form) is meant to evaluate to an expression, so if we have the | ||
| 2273 | ;; ;; final value already, we can byte-compile it. | ||
| 2274 | ;; (setcar (cdr (nth 2 form)) | ||
| 2275 | ;; (byte-compile-top-level (cadr (nth 2 form)) nil 'file))) | ||
| 2276 | (let ((tail (nthcdr 4 form))) | ||
| 2277 | (while tail | ||
| 2278 | (unless (keywordp (car tail)) ;No point optimizing keywords. | ||
| 2279 | ;; Compile the keyword arguments. | ||
| 2280 | (setcar tail (byte-compile-top-level (car tail) nil 'file))) | ||
| 2281 | (setq tail (cdr tail)))) | ||
| 2282 | form) | ||
| 2283 | 2271 | ||
| 2284 | (put 'require 'byte-hunk-handler 'byte-compile-file-form-require) | 2272 | (put 'require 'byte-hunk-handler 'byte-compile-file-form-require) |
| 2285 | (defun byte-compile-file-form-require (form) | 2273 | (defun byte-compile-file-form-require (form) |
diff --git a/lisp/subr.el b/lisp/subr.el index b548f82ca5a..1f9f3aee9fa 100644 --- a/lisp/subr.el +++ b/lisp/subr.el | |||
| @@ -2115,21 +2115,21 @@ by doing (clear-string STRING)." | |||
| 2115 | (message "Password not repeated accurately; please start over") | 2115 | (message "Password not repeated accurately; please start over") |
| 2116 | (sit-for 1)))) | 2116 | (sit-for 1)))) |
| 2117 | success) | 2117 | success) |
| 2118 | (let (minibuf) | 2118 | (let ((hide-chars-fun |
| 2119 | (lambda (beg end _len) | ||
| 2120 | (clear-this-command-keys) | ||
| 2121 | (setq beg (min end (max (minibuffer-prompt-end) | ||
| 2122 | beg))) | ||
| 2123 | (dotimes (i (- end beg)) | ||
| 2124 | (put-text-property (+ i beg) (+ 1 i beg) | ||
| 2125 | 'display (string ?.))))) | ||
| 2126 | minibuf) | ||
| 2119 | (minibuffer-with-setup-hook | 2127 | (minibuffer-with-setup-hook |
| 2120 | (lambda () | 2128 | (lambda () |
| 2121 | (setq minibuf (current-buffer)) | 2129 | (setq minibuf (current-buffer)) |
| 2122 | ;; Turn off electricity. | 2130 | ;; Turn off electricity. |
| 2123 | (set (make-local-variable 'post-self-insert-hook) nil) | 2131 | (set (make-local-variable 'post-self-insert-hook) nil) |
| 2124 | (add-hook 'after-change-functions | 2132 | (add-hook 'after-change-functions hide-chars-fun nil 'local)) |
| 2125 | (lambda (beg end _len) | ||
| 2126 | (clear-this-command-keys) | ||
| 2127 | (setq beg (min end (max (minibuffer-prompt-end) | ||
| 2128 | beg))) | ||
| 2129 | (dotimes (i (- end beg)) | ||
| 2130 | (put-text-property (+ i beg) (+ 1 i beg) | ||
| 2131 | 'display (string ?.)))) | ||
| 2132 | nil t)) | ||
| 2133 | (unwind-protect | 2133 | (unwind-protect |
| 2134 | (read-string prompt nil | 2134 | (read-string prompt nil |
| 2135 | (let ((sym (make-symbol "forget-history"))) | 2135 | (let ((sym (make-symbol "forget-history"))) |
| @@ -2137,7 +2137,14 @@ by doing (clear-string STRING)." | |||
| 2137 | sym) | 2137 | sym) |
| 2138 | default) | 2138 | default) |
| 2139 | (when (buffer-live-p minibuf) | 2139 | (when (buffer-live-p minibuf) |
| 2140 | (with-current-buffer minibuf (erase-buffer)))))))) | 2140 | (with-current-buffer minibuf |
| 2141 | ;; Not sure why but it seems that there might be cases where the | ||
| 2142 | ;; minibuffer is not always properly reset later on, so undo | ||
| 2143 | ;; whatever we've done here (bug#11392). | ||
| 2144 | (remove-hook 'after-change-functions hide-chars-fun 'local) | ||
| 2145 | (kill-local-variable 'post-self-insert-hook) | ||
| 2146 | ;; And of course, don't keep the sensitive data around. | ||
| 2147 | (erase-buffer)))))))) | ||
| 2141 | 2148 | ||
| 2142 | ;; This should be used by `call-interactively' for `n' specs. | 2149 | ;; This should be used by `call-interactively' for `n' specs. |
| 2143 | (defun read-number (prompt &optional default) | 2150 | (defun read-number (prompt &optional default) |