diff options
-rw-r--r-- | lisp/gnus/ChangeLog | 5 | ||||
-rw-r--r-- | lisp/gnus/gnus-art.el | 15 |
2 files changed, 15 insertions, 5 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 4fd0615e5eb..7cfa5358c63 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,5 +1,10 @@ 2008-04-05 Stefan Monnier <monnier@iro.umontreal.ca> + * gnus-art.el (gnus-mime-replace-part): Remove unnecessary use of + mm-with-multibyte. + (gnus-request-article-this-buffer): Make sure the proper decoding is used + if gnus-original-article-buffer happens to be unibyte. + * gnus-ems.el (gnus-x-splash): Prefer mm-disable-multibyte to default-enable-multibyte-characters. diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el index 55b59488e8e..b9f613acaa4 100644 --- a/lisp/gnus/gnus-art.el +++ b/lisp/gnus/gnus-art.el @@ -4785,10 +4785,9 @@ and `gnus-mime-delete-part', and not provided at run-time normally." ;; Useful if file has already been saved to disk (interactive (list - (mm-with-multibyte - (read-file-name "Replace MIME part with file: " - (or mm-default-directory default-directory) - nil nil)))) + (read-file-name "Replace MIME part with file: " + (or mm-default-directory default-directory) + nil nil))) (gnus-mime-save-part-and-strip file)) (defun gnus-mime-save-part-and-strip (&optional file) @@ -6586,7 +6585,13 @@ If given a prefix, show the hidden text instead." (with-current-buffer gnus-original-article-buffer (and (equal (car gnus-original-article) group) (eq (cdr gnus-original-article) article)))) - (insert-buffer-substring gnus-original-article-buffer) + ;; `insert-buffer-substring' would incorrectly use the + ;; equivalent of string-make-multibyte which amount to decoding + ;; with locale-coding-system, causing failure of + ;; subsequent decoding. + (insert (mm-string-to-multibyte + (with-current-buffer gnus-original-article-buffer + (buffer-substring (point-min) (point-max))))) 'article) ;; Check the backlog. ((and gnus-keep-backlog |