X-Git-Url: http://cgit.sxemacs.org/?a=blobdiff_plain;f=lisp%2Fmm-partial.el;h=44b7d73f93d2d51c420b643c90e1edcc93aa2a04;hb=726fe2fc681a7ac96fbb2eddaf86f9ac91fcf36b;hp=706f52ef9098cf309369abf6a985c3a6d6c081d2;hpb=55f610143f1f63a6cc448649d02a51a0b99c04f1;p=gnus diff --git a/lisp/mm-partial.el b/lisp/mm-partial.el index 706f52ef9..44b7d73f9 100644 --- a/lisp/mm-partial.el +++ b/lisp/mm-partial.el @@ -1,25 +1,24 @@ ;;; mm-partial.el --- showing message/partial -;; Copyright (C) 2000, 2001 Free Software Foundation, Inc. + +;; Copyright (C) 2000-2013 Free Software Foundation, Inc. ;; Author: Shenghuo Zhu ;; Keywords: message partial ;; This file is part of GNU Emacs. -;; GNU Emacs is free software; you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published -;; by the Free Software Foundation; either version 2, or (at your -;; option) any later version. +;; GNU Emacs is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. -;; GNU Emacs is distributed in the hope that it will be useful, but -;; WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -;; General Public License for more details. +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, -;; Boston, MA 02111-1307, USA. +;; along with GNU Emacs. If not, see . ;;; Commentary: @@ -32,8 +31,7 @@ (require 'mm-decode) (defun mm-partial-find-parts (id &optional art) - (let ((headers (save-excursion - (set-buffer gnus-summary-buffer) + (let ((headers (with-current-buffer gnus-summary-buffer gnus-newsgroup-headers)) phandles header) (while (setq header (pop headers)) @@ -42,7 +40,8 @@ (gnus-request-article-this-buffer (aref header 0) gnus-newsgroup-name) (when (search-forward id nil t) - (let ((nhandles (mm-dissect-buffer)) nid) + (let ((nhandles (mm-dissect-buffer + nil gnus-article-loose-mime)) nid) (if (consp (car nhandles)) (mm-destroy-parts nhandles) (setq nid (cdr (assq 'id @@ -70,8 +69,7 @@ If NO-DISPLAY is nil, display it. Otherwise, do nothing after replacing." (sort (cons handle (mm-partial-find-parts id - (save-excursion - (set-buffer gnus-summary-buffer) + (with-current-buffer gnus-summary-buffer (gnus-summary-article-number)))) #'(lambda (a b) (let ((anumber (string-to-number @@ -83,8 +81,7 @@ If NO-DISPLAY is nil, display it. Otherwise, do nothing after replacing." (< anumber bnumber))))) (setq gnus-article-mime-handles (mm-merge-handles gnus-article-mime-handles phandles)) - (save-excursion - (set-buffer (generate-new-buffer " *mm*")) + (with-current-buffer (generate-new-buffer " *mm*") (while (setq phandle (pop phandles)) (setq nn (string-to-number (cdr (assq 'number @@ -148,4 +145,6 @@ If NO-DISPLAY is nil, display it. Otherwise, do nothing after replacing." (error nil)) (delete-region ,(point-min-marker) ,(point-max-marker)))))))))) +(provide 'mm-partial) + ;;; mm-partial.el ends here