aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Zaretskii2007-04-03 11:11:27 +0000
committerEli Zaretskii2007-04-03 11:11:27 +0000
commitdb0821c894a2fccef7a679e2ebb5e80f41b6dfba (patch)
treeb5309f6d1fca03e2850b66ee66a8a27eb5d8ec74
parent6cbb0bb0764d5f3c0c023d501f700eb26d9e10dc (diff)
downloademacs-db0821c894a2fccef7a679e2ebb5e80f41b6dfba.tar.gz
emacs-db0821c894a2fccef7a679e2ebb5e80f41b6dfba.zip
(rmail-convert-to-babyl-format): Don't try to decode base-64 encoded body
if its content-type is something other than text/* or message/*.
-rw-r--r--lisp/mail/rmail.el24
1 files changed, 17 insertions, 7 deletions
diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el
index 5e534b2d47d..bfdd5048877 100644
--- a/lisp/mail/rmail.el
+++ b/lisp/mail/rmail.el
@@ -1959,9 +1959,13 @@ is non-nil if the user has supplied the password interactively.
1959 (base64-header-field-end 1959 (base64-header-field-end
1960 (save-excursion 1960 (save-excursion
1961 (goto-char start) 1961 (goto-char start)
1962 (re-search-forward 1962 (and (re-search-forward
1963 "^content-transfer-encoding:\\(\n?[\t ]\\)*base64\\(\n?[\t ]\\)*" 1963 "^content-transfer-encoding:\\(\n?[\t ]\\)*base64\\(\n?[\t ]\\)*"
1964 header-end t)))) 1964 header-end t)
1965 ;; Don't try to decode non-text data.
1966 (re-search-forward
1967 "^content-type:\\(\n?[\t ]\\)\\(text\\|message\\)/"
1968 header-end t)))))
1965 (if quoted-printable-header-field-end 1969 (if quoted-printable-header-field-end
1966 (save-excursion 1970 (save-excursion
1967 (unless 1971 (unless
@@ -2061,10 +2065,16 @@ is non-nil if the user has supplied the password interactively.
2061 "^content-transfer-encoding:\\(\n?[\t ]\\)*quoted-printable\\(\n?[\t ]\\)*" 2065 "^content-transfer-encoding:\\(\n?[\t ]\\)*quoted-printable\\(\n?[\t ]\\)*"
2062 header-end t))) 2066 header-end t)))
2063 (base64-header-field-end 2067 (base64-header-field-end
2064 (save-excursion 2068 (and
2065 (re-search-forward 2069 (save-excursion
2066 "^content-transfer-encoding:\\(\n?[\t ]\\)*base64\\(\n?[\t ]\\)*" 2070 (re-search-forward
2067 header-end t))) 2071 "^content-transfer-encoding:\\(\n?[\t ]\\)*base64\\(\n?[\t ]\\)*"
2072 header-end t))
2073 ;; Don't decode non-text data.
2074 (save-excursion
2075 (re-search-forward
2076 "^content-type:\\(\n?[\t ]\\)\\(text\\|message\\)/"
2077 header-end t))))
2068 (size 2078 (size
2069 ;; Get the numeric value from the Content-Length field. 2079 ;; Get the numeric value from the Content-Length field.
2070 (save-excursion 2080 (save-excursion