diff options
| author | Paul Eggert | 2016-06-26 00:16:25 +0200 |
|---|---|---|
| committer | Paul Eggert | 2016-06-26 00:16:25 +0200 |
| commit | fdcf46d33eebc59e56a35fcea186c61aad3c81d0 (patch) | |
| tree | 8db131d7f52ead80ee12e52c3236510f71b31b48 /lisp | |
| parent | d6930356cabd3036e445cc6a2f668b1fd3e0cde4 (diff) | |
| parent | 0377fe2b819bb93ac7dc314c8dbd99304d8b98d0 (diff) | |
| download | emacs-fdcf46d33eebc59e56a35fcea186c61aad3c81d0.tar.gz emacs-fdcf46d33eebc59e56a35fcea186c61aad3c81d0.zip | |
Merge from origin/emacs-25
0377fe2 ; Spelling fixes
f253695 Update docs for `customize-mode'
4395aaa Fix documentation of 'assoc-string' and 'compare-strings'
ab0ebb9 ; Only load .elc file in tests.
a98aa02 Error on multibyte characters in HTTP request
ea512a7 * lisp/gnus/mm-decode.el (mm-convert-shr-links): Mask keys th...
8297331 ; Revert "Ensure undo-boundary after insert-file-contents."
dc5e65b Unset GIT_DIR when calling Git commands
6cdd8f7 Ensure undo-boundary after insert-file-contents.
4793f5f Clarify documentation of 'line-spacing' and 'line-height'
5f37572 Fix removal of variables from process-environment
e5e886d * admin/authors.el (authors-ignored-files, authors-valid-file...
db0777b * admin/authors.el (authors-aliases, authors-fixed-case): Add...
# Conflicts:
# doc/lispref/modes.texi
# lisp/gnus/mm-decode.el
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/cus-edit.el | 11 | ||||
| -rw-r--r-- | lisp/gnus/mm-decode.el | 15 | ||||
| -rw-r--r-- | lisp/url/url-http.el | 19 | ||||
| -rw-r--r-- | lisp/vc/vc-git.el | 4 |
4 files changed, 25 insertions, 24 deletions
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el index a1eb1d20016..60d07f9bc77 100644 --- a/lisp/cus-edit.el +++ b/lisp/cus-edit.el | |||
| @@ -1072,9 +1072,10 @@ are shown; the contents of those subgroups are initially hidden." | |||
| 1072 | 1072 | ||
| 1073 | ;;;###autoload | 1073 | ;;;###autoload |
| 1074 | (defun customize-mode (mode) | 1074 | (defun customize-mode (mode) |
| 1075 | "Customize options related to the current major mode. | 1075 | "Customize options related to a major or minor mode. |
| 1076 | If a prefix \\[universal-argument] was given (or if the current major mode has no known group), | 1076 | By default the current major mode is used. With a prefix |
| 1077 | then prompt for the MODE to customize." | 1077 | argument or if the current major mode has no known group, prompt |
| 1078 | for the MODE to customize." | ||
| 1078 | (interactive | 1079 | (interactive |
| 1079 | (list | 1080 | (list |
| 1080 | (let ((completion-regexp-list '("-mode\\'")) | 1081 | (let ((completion-regexp-list '("-mode\\'")) |
| @@ -1083,8 +1084,8 @@ then prompt for the MODE to customize." | |||
| 1083 | major-mode | 1084 | major-mode |
| 1084 | (intern | 1085 | (intern |
| 1085 | (completing-read (if group | 1086 | (completing-read (if group |
| 1086 | (format "Major mode (default %s): " major-mode) | 1087 | (format "Mode (default %s): " major-mode) |
| 1087 | "Major mode: ") | 1088 | "Mode: ") |
| 1088 | obarray | 1089 | obarray |
| 1089 | 'custom-group-of-mode | 1090 | 'custom-group-of-mode |
| 1090 | t nil nil (if group (symbol-name major-mode)))))))) | 1091 | t nil nil (if group (symbol-name major-mode)))))))) |
diff --git a/lisp/gnus/mm-decode.el b/lisp/gnus/mm-decode.el index 744474ca113..c653d735543 100644 --- a/lisp/gnus/mm-decode.el +++ b/lisp/gnus/mm-decode.el | |||
| @@ -1840,10 +1840,11 @@ If RECURSIVE, search recursively." | |||
| 1840 | (defvar shr-image-map) | 1840 | (defvar shr-image-map) |
| 1841 | 1841 | ||
| 1842 | (autoload 'widget-convert-button "wid-edit") | 1842 | (autoload 'widget-convert-button "wid-edit") |
| 1843 | (defvar widget-keymap) | ||
| 1843 | 1844 | ||
| 1844 | (defun mm-convert-shr-links () | 1845 | (defun mm-convert-shr-links () |
| 1845 | (let ((start (point-min)) | 1846 | (let ((start (point-min)) |
| 1846 | end) | 1847 | end keymap) |
| 1847 | (while (and start | 1848 | (while (and start |
| 1848 | (< start (point-max))) | 1849 | (< start (point-max))) |
| 1849 | (when (setq start (text-property-not-all start (point-max) 'shr-url nil)) | 1850 | (when (setq start (text-property-not-all start (point-max) 'shr-url nil)) |
| @@ -1851,10 +1852,16 @@ If RECURSIVE, search recursively." | |||
| 1851 | (widget-convert-button | 1852 | (widget-convert-button |
| 1852 | 'url-link start end | 1853 | 'url-link start end |
| 1853 | :help-echo (get-text-property start 'help-echo) | 1854 | :help-echo (get-text-property start 'help-echo) |
| 1854 | ;;; FIXME Should only use the image map on images. | 1855 | :keymap (setq keymap (copy-keymap shr-map)) |
| 1855 | :keymap shr-image-map | ||
| 1856 | (get-text-property start 'shr-url)) | 1856 | (get-text-property start 'shr-url)) |
| 1857 | (put-text-property start end 'local-map nil) | 1857 | ;; Remove keymap that `shr-urlify' adds. |
| 1858 | (put-text-property start end 'keymap nil) | ||
| 1859 | ;; Mask keys that launch `widget-button-click'. | ||
| 1860 | ;; Those bindings are provided by `widget-keymap' | ||
| 1861 | ;; that is a parent of `gnus-article-mode-map'. | ||
| 1862 | (dolist (key (where-is-internal #'widget-button-click widget-keymap)) | ||
| 1863 | (unless (lookup-key keymap key) | ||
| 1864 | (define-key keymap key #'ignore))) | ||
| 1858 | (dolist (overlay (overlays-at start)) | 1865 | (dolist (overlay (overlays-at start)) |
| 1859 | (overlay-put overlay 'face nil)) | 1866 | (overlay-put overlay 'face nil)) |
| 1860 | (setq start end))))) | 1867 | (setq start end))))) |
diff --git a/lisp/url/url-http.el b/lisp/url/url-http.el index 306b36ae951..ef7b77969e6 100644 --- a/lisp/url/url-http.el +++ b/lisp/url/url-http.el | |||
| @@ -307,19 +307,7 @@ The string is based on `url-privacy-level' and `url-user-agent'." | |||
| 307 | ;; allows us to elide null lines directly, at the cost of making | 307 | ;; allows us to elide null lines directly, at the cost of making |
| 308 | ;; the layout less clear. | 308 | ;; the layout less clear. |
| 309 | (setq request | 309 | (setq request |
| 310 | ;; We used to concat directly, but if one of the strings happens | 310 | (concat |
| 311 | ;; to being multibyte (even if it only contains pure ASCII) then | ||
| 312 | ;; every string gets converted with `string-MAKE-multibyte' which | ||
| 313 | ;; turns the 127-255 codes into things like latin-1 accented chars | ||
| 314 | ;; (it would work right if it used `string-TO-multibyte' instead). | ||
| 315 | ;; So to avoid the problem we force every string to be unibyte. | ||
| 316 | (mapconcat | ||
| 317 | ;; FIXME: Instead of `string-AS-unibyte' we'd want | ||
| 318 | ;; `string-to-unibyte', so as to properly signal an error if one | ||
| 319 | ;; of the strings contains a multibyte char. | ||
| 320 | 'string-as-unibyte | ||
| 321 | (delq nil | ||
| 322 | (list | ||
| 323 | ;; The request | 311 | ;; The request |
| 324 | (or url-http-method "GET") " " | 312 | (or url-http-method "GET") " " |
| 325 | (if using-proxy (url-recreate-url url-http-target-url) real-fname) | 313 | (if using-proxy (url-recreate-url url-http-target-url) real-fname) |
| @@ -398,7 +386,10 @@ The string is based on `url-privacy-level' and `url-user-agent'." | |||
| 398 | "\r\n" | 386 | "\r\n" |
| 399 | ;; Any data | 387 | ;; Any data |
| 400 | url-http-data)) | 388 | url-http-data)) |
| 401 | "")) | 389 | ;; Bug#23750 |
| 390 | (unless (= (string-bytes request) | ||
| 391 | (length request)) | ||
| 392 | (error "Multibyte text in HTTP request: %s" request)) | ||
| 402 | (url-http-debug "Request is: \n%s" request) | 393 | (url-http-debug "Request is: \n%s" request) |
| 403 | request)) | 394 | request)) |
| 404 | 395 | ||
diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el index 783ea89c6ce..e6fe0196d88 100644 --- a/lisp/vc/vc-git.el +++ b/lisp/vc/vc-git.el | |||
| @@ -1434,7 +1434,8 @@ The difference to vc-do-command is that this function always invokes | |||
| 1434 | (let ((coding-system-for-read | 1434 | (let ((coding-system-for-read |
| 1435 | (or coding-system-for-read vc-git-log-output-coding-system)) | 1435 | (or coding-system-for-read vc-git-log-output-coding-system)) |
| 1436 | (coding-system-for-write | 1436 | (coding-system-for-write |
| 1437 | (or coding-system-for-write vc-git-commits-coding-system))) | 1437 | (or coding-system-for-write vc-git-commits-coding-system)) |
| 1438 | (process-environment (cons "GIT_DIR" process-environment))) | ||
| 1438 | (apply 'vc-do-command (or buffer "*vc*") okstatus vc-git-program | 1439 | (apply 'vc-do-command (or buffer "*vc*") okstatus vc-git-program |
| 1439 | ;; http://debbugs.gnu.org/16897 | 1440 | ;; http://debbugs.gnu.org/16897 |
| 1440 | (unless (and (not (cdr-safe file-or-list)) | 1441 | (unless (and (not (cdr-safe file-or-list)) |
| @@ -1462,6 +1463,7 @@ The difference to vc-do-command is that this function always invokes | |||
| 1462 | (coding-system-for-write | 1463 | (coding-system-for-write |
| 1463 | (or coding-system-for-write vc-git-commits-coding-system)) | 1464 | (or coding-system-for-write vc-git-commits-coding-system)) |
| 1464 | (process-environment (cons "PAGER=" process-environment))) | 1465 | (process-environment (cons "PAGER=" process-environment))) |
| 1466 | (push "GIT_DIR" process-environment) | ||
| 1465 | (apply 'process-file vc-git-program nil buffer nil command args))) | 1467 | (apply 'process-file vc-git-program nil buffer nil command args))) |
| 1466 | 1468 | ||
| 1467 | (defun vc-git--out-ok (command &rest args) | 1469 | (defun vc-git--out-ok (command &rest args) |