diff lisp/gnus/mm-decode.el @ 69247:6580c61aced7

Revision: emacs@sv.gnu.org/emacs--devo--0--patch-134 Merge from gnus--rel--5.10 Patches applied: * gnus--rel--5.10 (patch 43-48) - Munge arch explicit ids in etc/images to match Emacs - Update from CVS
author Miles Bader <miles@gnu.org>
date Fri, 03 Mar 2006 07:45:27 +0000
parents 808f636eb13e
children b4faac2800dd 5754737d1e04
line wrap: on
line diff
--- a/lisp/gnus/mm-decode.el	Fri Mar 03 00:29:23 2006 +0000
+++ b/lisp/gnus/mm-decode.el	Fri Mar 03 07:45:27 2006 +0000
@@ -1084,14 +1084,16 @@
 
 (defun mm-get-part (handle)
   "Return the contents of HANDLE as a string."
-  (mm-with-unibyte-buffer
-    (insert (with-current-buffer (mm-handle-buffer handle)
-	      (mm-with-unibyte-current-buffer
-		(buffer-string))))
-    (mm-decode-content-transfer-encoding
-     (mm-handle-encoding handle)
-     (mm-handle-media-type handle))
-    (buffer-string)))
+  (let ((default-enable-multibyte-characters
+	  (with-current-buffer (mm-handle-buffer handle)
+	    (mm-multibyte-p))))
+    (with-temp-buffer
+      (insert-buffer-substring (mm-handle-buffer handle))
+      (mm-disable-multibyte)
+      (mm-decode-content-transfer-encoding
+       (mm-handle-encoding handle)
+       (mm-handle-media-type handle))
+      (buffer-string))))
 
 (defun mm-insert-part (handle)
   "Insert the contents of HANDLE in the current buffer."