]> code.delx.au - gnu-emacs/blobdiff - lisp/gnus/nnfolder.el
(gnus-group-prepare-flat): Check also whether groups with no unread article
[gnu-emacs] / lisp / gnus / nnfolder.el
index bafa475eac4a8fe9c1bc88a55108e61cea050566..6ba4aff6cc7669b125902c430de1bb30f456d202 100644 (file)
@@ -1,7 +1,7 @@
 ;;; nnfolder.el --- mail folder access for Gnus
 
 ;; Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-;;   2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+;;   2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
 
 ;; Author: Simon Josefsson <simon@josefsson.org> (adding MARKS)
 ;;      ShengHuo Zhu <zsh@cs.rochester.edu> (adding NOV)
@@ -42,9 +42,8 @@
 (require 'gnus-util)
 (require 'gnus-range)
 
-(eval-and-compile
-  (autoload 'gnus-article-unpropagatable-p "gnus-sum")
-  (autoload 'gnus-intersection "gnus-range"))
+;; FIXME not explicitly used in this file.
+(autoload 'gnus-article-unpropagatable-p "gnus-sum")
 
 (nnoo-declare nnfolder)
 
@@ -473,11 +472,11 @@ the group.  Then the marks file will be regenerated properly by Gnus.")
                (let ((nnfolder-current-directory nil))
                  (when (functionp target)
                    (setq target (funcall target newsgroup)))
-                 (if (and target
-                          (or (gnus-request-group target)
-                              (gnus-request-create-group target)))
-                     (nnmail-expiry-target-group target newsgroup)
-                   (setq target nil))))
+                 (when (and target (not (eq target 'delete)))
+                   (if (or (gnus-request-group target)
+                           (gnus-request-create-group target))
+                       (nnmail-expiry-target-group target newsgroup)
+                     (setq target nil)))))
              (nnfolder-possibly-change-group newsgroup server))
            (when target
              (nnheader-message 5 "Deleting article %d in %s..."
@@ -926,7 +925,9 @@ deleted.  Point is left where the deleted region was."
              (active (or (cadr (assoc group nnfolder-group-alist))
                          (cons 1 0)))
              (scantime (assoc group nnfolder-scantime-alist))
-             (minid (lsh -1 -1))
+             (minid (or (and (boundp 'most-positive-fixnum)
+                             most-positive-fixnum)
+                        (lsh -1 -1)))
              maxid start end newscantime
              novbuf articles newnum
              buffer-read-only)