Mercurial > emacs
changeset 110222:9def4c1af9b9
gnus-start.el (gnus-get-unread-articles): Don't bother with groups that aren't going to be activated.
author | Katsumi Yamaoka <yamaoka@jpl.org> |
---|---|
date | Mon, 06 Sep 2010 00:44:55 +0000 |
parents | f0d95837f863 |
children | 109e3a627792 |
files | lisp/gnus/ChangeLog lisp/gnus/gnus-start.el |
diffstat | 2 files changed, 16 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/gnus/ChangeLog Mon Sep 06 00:41:06 2010 +0000 +++ b/lisp/gnus/ChangeLog Mon Sep 06 00:44:55 2010 +0000 @@ -1,5 +1,8 @@ 2010-09-05 Lars Magne Ingebrigtsen <larsi@gnus.org> + * gnus-start.el (gnus-get-unread-articles): Don't bother with groups + that aren't going to be activated. + * gnus-html.el (gnus-article-html): Allow calling without specifying the handle. In that case, dissect the buffer first.
--- a/lisp/gnus/gnus-start.el Mon Sep 06 00:41:06 2010 +0000 +++ b/lisp/gnus/gnus-start.el Mon Sep 06 00:44:55 2010 +0000 @@ -1734,8 +1734,13 @@ 'foreign))) (push (setq method-group-list (list method method-type nil)) type-cache)) - (setcar (nthcdr 2 method-group-list) - (cons info (nth 2 method-group-list)))) + ;; Only add groups that need updating. + (when (<= (gnus-info-level info) + (if (eq method-type 'foreign) + foreign-level + alevel)) + (setcar (nthcdr 2 method-group-list) + (cons info (nth 2 method-group-list))))) ;; Sort the methods based so that the primary and secondary ;; methods come first. This is done for legacy reasons to try to @@ -1753,19 +1758,13 @@ infos (nth 2 (car type-cache))) (pop type-cache) - (when method + (when (and method + infos) ;; See if any of the groups from this method require updating. - (when (block nil - (dolist (info infos) - (when (<= (gnus-info-level info) - (if (eq method-type 'foreign) - foreign-level - alevel)) - (return t)))) - (gnus-read-active-for-groups method infos) - (dolist (info infos) - (inline (gnus-get-unread-articles-in-group - info (gnus-active (gnus-info-group info)))))))) + (gnus-read-active-for-groups method infos) + (dolist (info infos) + (inline (gnus-get-unread-articles-in-group + info (gnus-active (gnus-info-group info))))))) (gnus-message 6 "Checking new news...done"))) (defun gnus-method-rank (type method)