diff lisp/gnus/gnus-group.el @ 112045:52100bac91db

Merge changes made in Gnus trunk. mm-view.el (mml-smime): Require. mm-view.el (mm-view-pkcs7-decrypt): If mml-smime-use is set to 'epg, use EPG to decrypt S/MIME messages instead of openssl. nnimap.el (nnimap-request-group): Avoid double SELECT on `M-g'. gnus-group.el (gnus-group-kill-group): Don't try to update the group status is the group clearly is unreachable. auth-source.el (auth-source-create): Add the optional second parameter to `local-variable-p' to be compatible with XEmacs. nnml.el (nnml-request-article): Allow requesting by Message-ID to work when using a compressed nnml folder. gnus-sum.el (gnus-select-newsgroup): Don't propagate marks to backends after sanitising on entry, because this never makes sense: If the articles have gone missing, then the data no longer exists on the backend, and if they haven't, then Gnus is wrong, and shouldn't overwrite anything anyway. shr.el (shr-insert-document): Bind shr-width dynamically to window-width if it's nil. shr.el (shr-width, shr-insert-document): Allow nil as shr-width value with the meaning of using the full emacs window width for rendering.
author Katsumi Yamaoka <yamaoka@jpl.org>
date Sun, 02 Jan 2011 11:23:02 +0000
parents c92e0a5c96e9
children 61f7601898b1
line wrap: on
line diff
--- a/lisp/gnus/gnus-group.el	Sat Jan 01 19:35:15 2011 -0500
+++ b/lisp/gnus/gnus-group.el	Sun Jan 02 11:23:02 2011 +0000
@@ -1,7 +1,8 @@
 ;;; gnus-group.el --- group mode commands for Gnus
 
 ;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-;;   2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+;;   2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+;;   Foundation, Inc.
 
 ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org>
 ;; Keywords: news
@@ -3790,7 +3791,8 @@
 		  gnus-list-of-killed-groups))
 	  (gnus-group-change-level
 	   (if entry entry group) gnus-level-killed (if entry nil level))
-	  (gnus-request-update-group-status group 'unsubscribe)
+	  (when (numberp (gnus-group-unread group))
+	    (gnus-request-update-group-status group 'unsubscribe))
 	  (message "Killed group %s" (gnus-group-decoded-name group)))
       ;; If there are lots and lots of groups to be killed, we use
       ;; this thing instead.
@@ -3814,7 +3816,8 @@
 	;; There may be more than one instance displayed.
 	(while (gnus-group-goto-group group)
 	  (gnus-delete-line))
-	(gnus-request-update-group-status group 'unsubscribe))
+	(when (numberp (gnus-group-unread group))
+	  (gnus-request-update-group-status group 'unsubscribe)))
       (gnus-make-hashtable-from-newsrc-alist))
 
     (gnus-group-position-point)