Fix garbled utf-8 bug.
authorShengHuo ZHU <zsh@cs.rochester.edu>
Fri, 15 Sep 2000 03:47:10 +0000 (03:47 +0000)
committerShengHuo ZHU <zsh@cs.rochester.edu>
Fri, 15 Sep 2000 03:47:10 +0000 (03:47 +0000)
lisp/ChangeLog
lisp/gnus-msg.el
lisp/message.el
lisp/mml.el

index 0c157ac..6de2232 100644 (file)
@@ -1,3 +1,11 @@
+2000-09-15 00:09:56  ShengHuo ZHU  <zsh@cs.rochester.edu>
+
+       * mml.el (mml-preview): Reinsert unibyte content. 
+       (mml-parse-1): Remove with-unibyte-current-buffer.
+       (mml-generate-mime-1): Ditto.
+       * gnus-msg.el (gnus-summary-mail-forward): Ditto.
+       * message.el (message-forward): Ditto.
+
 2000-09-14 23:13:50  ShengHuo ZHU  <zsh@cs.rochester.edu>
 
        * gnus-art.el (article-de-quoted-unreadable): Guess charset from
index 78d196b..7f80f8e 100644 (file)
@@ -723,8 +723,7 @@ If POST, post instead of mail."
            text)
        (save-excursion
          (set-buffer gnus-original-article-buffer)
-         (mm-with-unibyte-current-buffer
-           (setq text (buffer-string))))
+         (setq text (buffer-string)))
        (set-buffer 
         (gnus-get-buffer-create
          (generate-new-buffer-name " *Gnus forward*")))
index a919ddf..15bcb2a 100644 (file)
@@ -4101,8 +4101,7 @@ Optional DIGEST will use digest to forward."
            (mml-insert-buffer cur))
        (if message-forward-show-mml
            (insert-buffer-substring cur)
-         (mm-with-unibyte-current-buffer
-           (mml-insert-buffer cur))))
+         (mml-insert-buffer cur)))
       (setq e (point))
       (if message-forward-as-mime
          (if digest
index 86faed8..1d71f4b 100644 (file)
@@ -126,10 +126,7 @@ The function is called with one parameter, which is the generated part.")
                warn t))
        (setq raw (cdr (assq 'raw tag))
              point (point)
-             contents (if raw
-                          (mm-with-unibyte-current-buffer
-                            (mml-read-part (eq 'mml (car tag))))
-                        (mml-read-part (eq 'mml (car tag))))
+             contents (mml-read-part (eq 'mml (car tag)))
              charsets (if raw nil 
                         (mm-find-mime-charset-region point (point))))
        (when (and (not raw) (memq nil charsets))
@@ -352,8 +349,7 @@ If MML is non-nil, return the buffer up till the correspondent mml tag."
                  coded (buffer-string))))
        (mml-insert-mime-headers cont type charset encoding)
        (insert "\n")
-       (mm-with-unibyte-current-buffer
-         (insert coded))))
+       (insert coded)))
      ((eq (car cont) 'external)
       (insert "Content-Type: message/external-body")
       (let ((parameters (mml-parameter-string
@@ -852,7 +848,12 @@ If RAW, don't highlight the article."
        (replace-match "\n"))
     (mml-to-mime)
     (if raw
-       (mm-disable-multibyte)
+       (when (fboundp 'set-buffer-multibyte)
+         (let ((s (buffer-string)))
+           ;; Insert the content into unibyte buffer.
+           (erase-buffer)
+           (mm-disable-multibyte)
+           (insert s)))
       (let ((gnus-newsgroup-charset (car message-posting-charset)))
        (run-hooks 'gnus-article-decode-hook)
        (let ((gnus-newsgroup-name "dummy"))