Import Oort Gnus v0.09.
[elisp/gnus.git-] / lisp / mm-bodies.el
index 19cd5a4..e672e33 100644 (file)
@@ -143,6 +143,7 @@ If no encoding was done, nil is returned."
       bits)
      ((and (not mm-use-ultra-safe-encoding)
           (not longp)
+          (not (eq '7bit (cdr (assq charset mm-body-charset-encoding-alist))))
           (or (eq t (cdr message-posting-charset))
               (memq charset (cdr message-posting-charset))
               (eq charset mail-parse-charset)))
@@ -223,6 +224,10 @@ If TYPE is `text/plain' CRLF->LF translation may occur."
            (require 'mm-uu)
            (funcall mm-uu-binhex-decode-function (point-min) (point-max))
            t)
+          ((eq encoding 'x-yenc)
+           (require 'mm-uu)
+           (funcall mm-uu-yenc-decode-function (point-min) (point-max))
+           )
           ((functionp encoding)
            (funcall encoding (point-min) (point-max))
            t)
@@ -232,7 +237,7 @@ If TYPE is `text/plain' CRLF->LF translation may occur."
         (message "Error while decoding: %s" error)
         nil))
     (when (and
-          (memq encoding '(base64 x-uuencode x-uue x-binhex))
+          (memq encoding '(base64 x-uuencode x-uue x-binhex x-yenc))
           (equal type "text/plain"))
       (goto-char (point-min))
       (while (search-forward "\r\n" nil t)