changeset 106339:656eabdc03be

(rmail-mime-handle): Doc fix. (rmail-mime-show): Downcase the encoding. (Bug#5070)
author Glenn Morris <rgm@gnu.org>
date Tue, 01 Dec 2009 03:13:03 +0000
parents 8241fe93acbf
children 854ad9afde88
files lisp/ChangeLog lisp/mail/rmailmm.el
diffstat 2 files changed, 18 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Tue Dec 01 03:12:13 2009 +0000
+++ b/lisp/ChangeLog	Tue Dec 01 03:13:03 2009 +0000
@@ -1,3 +1,8 @@
+2009-12-01  Glenn Morris  <rgm@gnu.org>
+
+	* mail/rmailmm.el (rmail-mime-handle): Doc fix.
+	(rmail-mime-show): Downcase the encoding.  (Bug#5070)
+
 2009-12-01  Dan Nicolaescu  <dann@ics.uci.edu>
 
 	Make vc-print-log buttons work.
--- a/lisp/mail/rmailmm.el	Tue Dec 01 03:12:13 2009 +0000
+++ b/lisp/mail/rmailmm.el	Tue Dec 01 03:13:03 2009 +0000
@@ -329,8 +329,9 @@
 point should be at the beginning of the body.
 
 CONTENT-TYPE, CONTENT-DISPOSITION, and CONTENT-TRANSFER-ENCODING
-are the values of the respective parsed headers.  The parsed
-headers for CONTENT-TYPE and CONTENT-DISPOSITION have the form
+are the values of the respective parsed headers.  The latter should
+be downcased.  The parsed headers for CONTENT-TYPE and CONTENT-DISPOSITION
+have the form
 
   \(VALUE . ALIST)
 
@@ -408,12 +409,16 @@
 		(mail-fetch-field "Content-Transfer-Encoding")
 		content-disposition
 		(mail-fetch-field "Content-Disposition")))))
-    (if content-type
-	(setq content-type (mail-header-parse-content-type
-			    content-type))
-      ;; FIXME: Default "message/rfc822" in a "multipart/digest"
-      ;; according to RFC 2046.
-      (setq content-type '("text/plain")))
+    ;; Per RFC 2045, C-T-E is case insensitive (bug#5070), but the others
+    ;; are not completely so.  Hopefully mail-header-parse-* DTRT.
+    (if content-transfer-encoding
+	(setq content-transfer-encoding (downcase content-transfer-encoding)))
+    (setq content-type
+	  (if content-type
+	      (mail-header-parse-content-type content-type)
+	    ;; FIXME: Default "message/rfc822" in a "multipart/digest"
+	    ;; according to RFC 2046.
+	    '("text/plain")))
     (setq content-disposition
 	  (if content-disposition
 	      (mail-header-parse-content-disposition content-disposition)