From: Miles Bader Date: Tue, 3 Mar 2009 02:32:23 +0000 (+0000) Subject: Merge from gnus--devo--0 X-Git-Tag: emacs-pretest-23.0.92~377 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=9cdff61311b9407d724c5923c1e2d15ac2c781fc;p=emacs.git Merge from gnus--devo--0 Revision: emacs@sv.gnu.org/emacs--devo--0--patch-1561 --- diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index a99b2fd5524..b21bad407fe 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,7 @@ +2009-03-02 Katsumi Yamaoka + + * mml.el (mml-insert-mime): Don't break parts that mm-uu dissected. + 2009-02-25 Katsumi Yamaoka * gnus-dired.el: Remove autoload for gnus-setup-message. diff --git a/lisp/gnus/mml.el b/lisp/gnus/mml.el index e682b1b069b..6028ce8b205 100644 --- a/lisp/gnus/mml.el +++ b/lisp/gnus/mml.el @@ -898,10 +898,17 @@ If HANDLES is non-nil, use it instead reparsing the buffer." (unless (setq textp (equal (mm-handle-media-supertype handle) "text")) (save-excursion (set-buffer (setq buffer (mml-generate-new-buffer " *mml*"))) - (mm-insert-part handle 'no-cache) - (if (setq mmlp (equal (mm-handle-media-type handle) - "message/rfc822")) - (mime-to-mml))))) + (if (eq (mail-content-type-get (mm-handle-type handle) 'charset) + 'gnus-decoded) + ;; A part that mm-uu dissected from a non-MIME message + ;; because of `gnus-article-emulate-mime'. + (progn + (mm-enable-multibyte) + (insert-buffer-substring (mm-handle-buffer handle))) + (mm-insert-part handle 'no-cache) + (if (setq mmlp (equal (mm-handle-media-type handle) + "message/rfc822")) + (mime-to-mml)))))) (if mmlp (mml-insert-mml-markup handle nil t t) (unless (and no-markup