bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#3648: Gnus doubles MIME tags


From: Katsumi Yamaoka
Subject: bug#3648: Gnus doubles MIME tags
Date: Mon, 22 Jun 2009 21:11:49 +0900
User-agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1.50 (gnu/linux)

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  <address@hidden>

        * 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,





reply via email to

[Prev in Thread] Current Thread [Next in Thread]