aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/gnus/mm-bodies.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/gnus/mm-bodies.el')
-rw-r--r--lisp/gnus/mm-bodies.el71
1 files changed, 18 insertions, 53 deletions
diff --git a/lisp/gnus/mm-bodies.el b/lisp/gnus/mm-bodies.el
index 51a16a6a7f..ab8ab1ccac 100644
--- a/lisp/gnus/mm-bodies.el
+++ b/lisp/gnus/mm-bodies.el
@@ -1,5 +1,5 @@
;;; mm-bodies.el --- functions for decoding MIME things
-;; Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
+;; Copyright (C) 1998, 1999, 2000, 2002 Free Software Foundation, Inc.
;; Author: Lars Magne Ingebrigtsen <[email protected]>
;; MORIOKA Tomohiko <[email protected]>
@@ -56,8 +56,8 @@ Valid encodings are `7bit', `8bit', `quoted-printable' and `base64'."
(defun mm-encode-body ()
"Encode a body.
Should be called narrowed to the body that is to be encoded.
-If there is more than one non-ASCII MULE charset, then list of found
-MULE charsets are returned.
+If there is more than one non-ASCII Mule charset, then the list of found
+Mule charsets is returned.
If successful, the MIME charset is returned.
If no encoding was done, nil is returned."
(if (not (mm-multibyte-p))
@@ -73,8 +73,7 @@ If no encoding was done, nil is returned."
nil))
(save-excursion
(goto-char (point-min))
- (let ((charsets (mm-find-mime-charset-region (point-min) (point-max)))
- charset)
+ (let ((charsets (mm-find-mime-charset-region (point-min) (point-max))))
(cond
;; No encoding.
((null charsets)
@@ -84,29 +83,10 @@ If no encoding was done, nil is returned."
charsets)
;; We encode.
(t
- (let ((charset (car charsets))
- start)
- (when (or t
- ;; We always decode.
- (not (mm-coding-system-equal
- charset buffer-file-coding-system)))
- (while (not (eobp))
- (if (eq (mm-charset-after) 'ascii)
- (when start
- (save-restriction
- (narrow-to-region start (point))
- (mm-encode-coding-region
- start (point) (mm-charset-to-coding-system charset))
- (goto-char (point-max)))
- (setq start nil))
- (unless start
- (setq start (point))))
- (forward-char 1))
- (when start
- (mm-encode-coding-region start (point)
- (mm-charset-to-coding-system charset))
- (setq start nil)))
- charset)))))))
+ (mm-encode-coding-region (point-min) (point-max)
+ (mm-charset-to-coding-system
+ (car charsets)))
+ (car charsets)))))))
(eval-when-compile (defvar message-posting-charset))
@@ -133,27 +113,12 @@ If no encoding was done, nil is returned."
(defun mm-body-7-or-8 ()
"Say whether the body is 7bit or 8bit."
- (cond
- ((not (featurep 'mule))
- (if (save-excursion
- (goto-char (point-min))
- (skip-chars-forward mm-7bit-chars)
- (eobp))
- '7bit
- '8bit))
- (t
- ;; Mule version
- (if (and (null (delq 'ascii
- (mm-find-charset-region (point-min) (point-max))))
- ;;!!!The following is necessary because the function
- ;;!!!above seems to return the wrong result under
- ;;!!!Emacs 20.3. Sometimes.
- (save-excursion
- (goto-char (point-min))
- (skip-chars-forward mm-7bit-chars)
- (eobp)))
- '7bit
- '8bit))))
+ (if (save-excursion
+ (goto-char (point-min))
+ (skip-chars-forward mm-7bit-chars)
+ (eobp))
+ '7bit
+ '8bit))
;;;
;;; Functions for decoding
@@ -213,7 +178,7 @@ If no encoding was done, nil is returned."
The characters in CHARSET should then be decoded."
(if (stringp charset)
(setq charset (intern (downcase charset))))
- (if (or (not charset)
+ (if (or (not charset)
(eq 'gnus-all mail-parse-ignored-charsets)
(memq 'gnus-all mail-parse-ignored-charsets)
(memq charset mail-parse-ignored-charsets))
@@ -226,7 +191,7 @@ The characters in CHARSET should then be decoded."
(if (and (not coding-system)
(listp mail-parse-ignored-charsets)
(memq 'gnus-unknown mail-parse-ignored-charsets))
- (setq coding-system
+ (setq coding-system
(mm-charset-to-coding-system mail-parse-charset)))
(when (and charset coding-system
;; buffer-file-coding-system
@@ -242,7 +207,7 @@ The characters in CHARSET should then be decoded."
"Decode STRING with CHARSET."
(when (stringp charset)
(setq charset (intern (downcase charset))))
- (when (or (not charset)
+ (when (or (not charset)
(eq 'gnus-all mail-parse-ignored-charsets)
(memq 'gnus-all mail-parse-ignored-charsets)
(memq charset mail-parse-ignored-charsets))
@@ -253,7 +218,7 @@ The characters in CHARSET should then be decoded."
(if (and (not coding-system)
(listp mail-parse-ignored-charsets)
(memq 'gnus-unknown mail-parse-ignored-charsets))
- (setq coding-system
+ (setq coding-system
(mm-charset-to-coding-system mail-parse-charset)))
(when (and charset coding-system
(mm-multibyte-p)