emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/gnus/mm-decode.el


From: Miles Bader
Subject: [Emacs-diffs] Changes to emacs/lisp/gnus/mm-decode.el
Date: Sun, 27 Feb 2005 19:04:12 -0500

Index: emacs/lisp/gnus/mm-decode.el
diff -c emacs/lisp/gnus/mm-decode.el:1.21 emacs/lisp/gnus/mm-decode.el:1.22
*** emacs/lisp/gnus/mm-decode.el:1.21   Wed Feb  9 15:50:37 2005
--- emacs/lisp/gnus/mm-decode.el        Mon Feb 28 00:04:11 2005
***************
*** 509,518 ****
      (message "Destroying external MIME viewers")
      (mm-destroy-parts mm-postponed-undisplay-list)))
  
! (defun mm-dissect-buffer (&optional no-strict-mime loose-mime)
    "Dissect the current buffer and return a list of MIME handles."
    (save-excursion
!     (let (ct ctl type subtype cte cd description id result from)
        (save-restriction
        (mail-narrow-to-head)
        (when (or no-strict-mime
--- 509,518 ----
      (message "Destroying external MIME viewers")
      (mm-destroy-parts mm-postponed-undisplay-list)))
  
! (defun mm-dissect-buffer (&optional no-strict-mime loose-mime from)
    "Dissect the current buffer and return a list of MIME handles."
    (save-excursion
!     (let (ct ctl type subtype cte cd description id result)
        (save-restriction
        (mail-narrow-to-head)
        (when (or no-strict-mime
***************
*** 523,530 ****
                cte (mail-fetch-field "content-transfer-encoding")
                cd (mail-fetch-field "content-disposition")
                description (mail-fetch-field "content-description")
-               from (mail-fetch-field "from")
                id (mail-fetch-field "content-id"))
          ;; FIXME: In some circumstances, this code is running within
          ;; an unibyte macro.  mail-extract-address-components
          ;; creates unibyte buffers. This `if', though not a perfect
--- 523,531 ----
                cte (mail-fetch-field "content-transfer-encoding")
                cd (mail-fetch-field "content-disposition")
                description (mail-fetch-field "content-description")
                id (mail-fetch-field "content-id"))
+         (unless from
+               (setq from (mail-fetch-field "from")))
          ;; FIXME: In some circumstances, this code is running within
          ;; an unibyte macro.  mail-extract-address-components
          ;; creates unibyte buffers. This `if', though not a perfect
***************
*** 567,573 ****
                                        'from from
                                        'start start)
                                  (car ctl))
!            (cons (car ctl) (mm-dissect-multipart ctl))))
          (t
           (mm-possibly-verify-or-decrypt
            (mm-dissect-singlepart
--- 568,574 ----
                                        'from from
                                        'start start)
                                  (car ctl))
!            (cons (car ctl) (mm-dissect-multipart ctl from))))
          (t
           (mm-possibly-verify-or-decrypt
            (mm-dissect-singlepart
***************
*** 594,600 ****
      (mm-make-handle
       (mm-copy-to-buffer) ctl cte nil cdl description nil id)))
  
! (defun mm-dissect-multipart (ctl)
    (goto-char (point-min))
    (let* ((boundary (concat "\n--" (mail-content-type-get ctl 'boundary)))
         (close-delimiter (concat (regexp-quote boundary) "--[ \t]*$"))
--- 595,601 ----
      (mm-make-handle
       (mm-copy-to-buffer) ctl cte nil cdl description nil id)))
  
! (defun mm-dissect-multipart (ctl from)
    (goto-char (point-min))
    (let* ((boundary (concat "\n--" (mail-content-type-get ctl 'boundary)))
         (close-delimiter (concat (regexp-quote boundary) "--[ \t]*$"))
***************
*** 611,617 ****
        (save-excursion
          (save-restriction
            (narrow-to-region start (point))
!           (setq parts (nconc (list (mm-dissect-buffer t)) parts)))))
        (end-of-line 2)
        (or (looking-at boundary)
          (forward-line 1))
--- 612,618 ----
        (save-excursion
          (save-restriction
            (narrow-to-region start (point))
!           (setq parts (nconc (list (mm-dissect-buffer t nil from)) parts)))))
        (end-of-line 2)
        (or (looking-at boundary)
          (forward-line 1))
***************
*** 620,626 ****
        (save-excursion
        (save-restriction
          (narrow-to-region start end)
!         (setq parts (nconc (list (mm-dissect-buffer t)) parts)))))
      (mm-possibly-verify-or-decrypt (nreverse parts) ctl)))
  
  (defun mm-copy-to-buffer ()
--- 621,627 ----
        (save-excursion
        (save-restriction
          (narrow-to-region start end)
!         (setq parts (nconc (list (mm-dissect-buffer t nil from)) parts)))))
      (mm-possibly-verify-or-decrypt (nreverse parts) ctl)))
  
  (defun mm-copy-to-buffer ()




reply via email to

[Prev in Thread] Current Thread [Next in Thread]