[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#8963: 24.0.50; gnus-no-server tries to connect to IMAP server
From: |
Daiki Ueno |
Subject: |
bug#8963: 24.0.50; gnus-no-server tries to connect to IMAP server |
Date: |
Tue, 05 Jul 2011 14:58:51 +0900 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
Daiki Ueno <ueno@unixuser.org> writes:
> gnus-read-active-file-1((nnimap "a" (nnimap-address "a.example.org")) nil)
> gnus-get-unread-articles(2)
OK, I'm trying to fix it by myself. The attached is a proposed patch.
I would appreciate if you could double-check since I'm not completely
sure what the original code intends to do.
=== modified file 'lisp/gnus/gnus-start.el'
--- lisp/gnus/gnus-start.el 2011-06-10 00:10:24 +0000
+++ lisp/gnus/gnus-start.el 2011-07-05 05:49:35 +0000
@@ -1043,7 +1043,7 @@
;; Find the number of unread articles in each non-dead group.
(let ((gnus-read-active-file (and (not level) gnus-read-active-file)))
- (gnus-get-unread-articles level))))
+ (gnus-get-unread-articles level dont-connect))))
(defun gnus-call-subscribe-functions (method group)
"Call METHOD to subscribe GROUP.
@@ -1606,7 +1606,7 @@
;; Go though `gnus-newsrc-alist' and compare with `gnus-active-hashtb'
;; and compute how many unread articles there are in each group.
-(defun gnus-get-unread-articles (&optional level)
+(defun gnus-get-unread-articles (&optional level dont-connect)
(setq gnus-server-method-cache nil)
(require 'gnus-agent)
(let* ((newsrc (cdr gnus-newsrc-alist))
@@ -1702,12 +1702,13 @@
;; If we have primary/secondary select methods, but no groups from
;; them, we still want to issue a retrieval request from them.
- (dolist (method (cons gnus-select-method
- gnus-secondary-select-methods))
- (when (and (not (assoc method type-cache))
- (gnus-check-backend-function 'request-list (car method)))
- (with-current-buffer nntp-server-buffer
- (gnus-read-active-file-1 method nil))))
+ (unless dont-connect
+ (dolist (method (cons gnus-select-method
+ gnus-secondary-select-methods))
+ (when (and (not (assoc method type-cache))
+ (gnus-check-backend-function 'request-list (car method)))
+ (with-current-buffer nntp-server-buffer
+ (gnus-read-active-file-1 method nil)))))
;; Start early async retrieval of data.
(let ((done-methods nil)
Regards,
--
Daiki Ueno