gnus-start.el (gnus-get-unread-articles): Clear out "early" methods so that previous errors don't prohibit getting new news.
nnimap.el (nnimap-retrieve-group-data-early): Ditto.
nntp.el (nntp-retrieve-group-data-early): Ditto.
+2012-01-27 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-start.el (gnus-get-unread-articles): Clear out "early" methods
+ so that previous errors don't prohibit getting new news.
+
+ * nnimap.el (nnimap-retrieve-group-data-early): Ditto.
+
+ * nntp.el (nntp-retrieve-group-data-early): Ditto.
+
2012-01-26 Katsumi Yamaoka <yamaoka@jpl.org>
* gnus-sum.el (gnus-summary-mode): Don't make bidi-paragraph-direction
(with-current-buffer nntp-server-buffer
(gnus-read-active-file-1 method nil)))))
+ ;; Clear out all the early methods.
+ (dolist (elem type-cache)
+ (destructuring-bind (method method-type infos dummy) elem
+ (when (and method
+ infos
+ (gnus-check-backend-function
+ 'retrieve-group-data-early (car method))
+ (not (gnus-method-denied-p method)))
+ (when (ignore-errors (gnus-get-function method 'open-server))
+ (unless (gnus-server-opened method)
+ (gnus-open-server method))
+ (when (gnus-server-opened method)
+ ;; Just mark this server as "cleared".
+ (gnus-retrieve-group-data-early method nil))))))
+
;; Start early async retrieval of data.
(let ((done-methods nil)
sanity-spec)
t)))
(deffoo nnimap-retrieve-group-data-early (server infos)
- (when (nnimap-possibly-change-group nil server)
+ (when (and (nnimap-possibly-change-group nil server)
+ infos)
(with-current-buffer (nnimap-buffer)
(erase-buffer)
(setf (nnimap-group nnimap-object) nil)
"Retrieve group info on INFOS."
(nntp-with-open-group nil server
(let ((buffer (nntp-find-connection-buffer nntp-server-buffer)))
+ (unless infos
+ (with-current-buffer buffer
+ (setq nntp-retrieval-in-progress nil)))
(when (and buffer
+ infos
(with-current-buffer buffer
(not nntp-retrieval-in-progress)))
;; The first time this is run, this variable is `try'. So we