Sync.
authoryamaoka <yamaoka>
Thu, 11 May 2000 21:50:51 +0000 (21:50 +0000)
committeryamaoka <yamaoka>
Thu, 11 May 2000 21:50:51 +0000 (21:50 +0000)
lisp/ChangeLog
lisp/mml.el

index a7238c6..22f4d05 100644 (file)
@@ -1,3 +1,9 @@
+2000-05-11 11:08:03  Shenghuo ZHU  <zsh@cs.rochester.edu>
+
+       * mml.el (mml-parse-singlepart-with-multiple-charsets): Set space,
+       newline and paragraph to nil when got a non-ascii character. Test
+       paragraph before newline.
+
 2000-05-10 12:17:58  Shenghuo ZHU  <zsh@cs.rochester.edu>
 
        * qp.el (quoted-printable-encode-region): Bind tab-width to 1. Set
index 2963f44..ba1a65e 100644 (file)
@@ -145,12 +145,15 @@ one charsets.")
                         (and use-ascii 'us-ascii)))
            charset struct space newline paragraph)
        (while (not (eobp))
+         (setq charset (mm-mime-charset (mm-charset-after)))
          (cond
           ;; The charset remains the same.
-          ((or (eq (setq charset (mm-mime-charset (mm-charset-after))) 
-                   'us-ascii)
-               (and use-ascii (not charset))
-               (eq charset current)))
+          ((eq charset 'us-ascii))
+          ((or (and use-ascii (not charset))
+               (eq charset current))
+           (setq space nil
+                 newline nil
+                 paragraph nil))
           ;; The initial charset was ascii.
           ((eq current 'us-ascii)
            (setq current charset
@@ -174,12 +177,12 @@ one charsets.")
          (cond
           ((memq (following-char) '(?  ?\t))
            (setq space (1+ (point))))
-          ((eq (following-char) ?\n)
-           (setq newline (1+ (point))))
           ((and (eq (following-char) ?\n)
                 (not (bobp))
                 (eq (char-after (1- (point))) ?\n))
-           (setq paragraph (point))))
+           (setq paragraph (point)))
+          ((eq (following-char) ?\n)
+           (setq newline (1+ (point)))))
          (forward-char 1))
        ;; Do the final part.
        (unless (= beg (point))