changeset 112415:555faf6e40d0

mm-decode.el (mm-preferred-alternative-precedence): Don't bug out on nested related parts. nnfolder.el (nnfolder-request-expire-articles): Return the list of unexpired articles. This fixes the regression that led expiry marks to disappear from nnfolder groups.
author Katsumi Yamaoka <yamaoka@jpl.org>
date Sat, 22 Jan 2011 12:34:50 +0000
parents 4b27e6d58d2c
children f792eb37d0ca
files lisp/gnus/ChangeLog lisp/gnus/mm-decode.el lisp/gnus/nnfolder.el
diffstat 3 files changed, 15 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/gnus/ChangeLog	Sat Jan 22 12:33:32 2011 +0100
+++ b/lisp/gnus/ChangeLog	Sat Jan 22 12:34:50 2011 +0000
@@ -1,3 +1,12 @@
+2011-01-22  Lars Ingebrigtsen  <larsi@gnus.org>
+
+	* mm-decode.el (mm-preferred-alternative-precedence): Don't bug out on
+	nested related parts.
+
+	* nnfolder.el (nnfolder-request-expire-articles): Return the list of
+	unexpired articles.  This fixes the regression that led expiry marks to
+	disappear from nnfolder groups.
+
 2011-01-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 
 	* gnus-art.el (gnus-button-alist, gnus-button-handle-info-keystrokes):
--- a/lisp/gnus/mm-decode.el	Sat Jan 22 12:33:32 2011 +0100
+++ b/lisp/gnus/mm-decode.el	Sat Jan 22 12:34:50 2011 +0000
@@ -1379,9 +1379,10 @@
 	(setq handles (nconc (delete handle handles) (list handle))))))
   ;; Remove empty parts.
   (dolist (handle (copy-sequence handles))
-    (unless (with-current-buffer (mm-handle-buffer handle)
-	      (goto-char (point-min))
-	      (re-search-forward "[^ \t\n]" nil t))
+    (when (and (bufferp (mm-handle-buffer handle))
+	       (not (with-current-buffer (mm-handle-buffer handle)
+		      (goto-char (point-min))
+		      (re-search-forward "[^ \t\n]" nil t))))
       (setq handles (nconc (delete handle handles) (list handle)))))
   (mapcar #'mm-handle-media-type handles))
 
--- a/lisp/gnus/nnfolder.el	Sat Jan 22 12:33:32 2011 +0100
+++ b/lisp/gnus/nnfolder.el	Sat Jan 22 12:34:50 2011 +0000
@@ -488,8 +488,8 @@
       (nnfolder-save-buffer)
       (nnfolder-adjust-min-active newsgroup)
       (nnfolder-save-active nnfolder-group-alist nnfolder-active-file)
-      (gnus-sorted-difference articles (nreverse deleted-articles)))
-    (nnfolder-save-all-buffers)))
+      (nnfolder-save-all-buffers)
+      (gnus-sorted-difference articles (nreverse deleted-articles)))))
 
 (deffoo nnfolder-request-move-article (article group server accept-form
 					       &optional last move-is-internal)