Gnus doubles MIME tags
Katsumi Yamaoka <[email protected]>
| Newsgroups | gmane.emacs.gnus.general,gmane.emacs.pretest.bugs |
|---|---|
| Organization | Emacsen advocacy group |
| Message-ID | <[email protected]> |
Hi, You might have ever seen a MIME tag in the Gnus article buffer like this: [2. non-ascii-filename.pdf --- application/pdf; non-ascii-filename.pdf]... Note that the tag is broken into two lines. In such a case, typing the `E' command there to display the attachment externally doubles the tag like: [2. non-ascii-filename.pdf --- application/pdf; non-ascii-filename.pdf]... non-ascii-filename.pdf --- application/pdf; non-ascii-filename.pdf]... or [2. [2. non-ascii-filename.pdf --- application/pdf; non-ascii-filename.pdf]... I found this is due to M$'s MIME encoder. In the raw form, the MIME header it made looks like this: Content-Description: =?iso-8859-1?Q?non-ascii-filename.pdf?= It's ugly but is not a bug. Gnus decodes it including the first newline and displays it in the MIME tag as is. However, Gnus works properly only with a MIME tag drawn in a single line. The following patch solves it. It uses `message-fetch-field' that strips newlines instead of `mail-fetch-field'. (I don't know how I commit it to the Emacs trunk and also the branches, so I post it here.) 2009-06-22 Katsumi Yamaoka <[email protected]> * mm-decode.el (mm-dissect-buffer): Use message-fetch-field instead of mail-fetch-field to fetch Content-Description header in order to exclude newlines. --- mm-decode.el~ 2009-01-22 08:09:02 +0000 +++ mm-decode.el 2009-06-22 11:52:50 +0000 @@ -563,7 +563,7 @@ ctl (and ct (mail-header-parse-content-type ct)) cte (mail-fetch-field "content-transfer-encoding") cd (mail-fetch-field "content-disposition") - description (mail-fetch-field "content-description") + description (message-fetch-field "content-description") id (mail-fetch-field "content-id")) (unless from (setq from (mail-fetch-field "from"))) Regards,