diff options
author | Miles Bader <miles@gnu.org> | 2007-10-27 09:07:17 +0000 |
---|---|---|
committer | Miles Bader <miles@gnu.org> | 2007-10-27 09:07:17 +0000 |
commit | fdc9061358d3654e14bfc1419632e1d6c6c5c13e (patch) | |
tree | 00f5484d576513deddd938a9a277d0db860b9a5b /lisp/gnus/gnus.el | |
parent | ebe4c71027cd6ec8583631e895e7fdd3decfc099 (diff) | |
parent | b6ff295c434269fe824ec47cbfc87c6a02dfd94d (diff) | |
download | emacs-fdc9061358d3654e14bfc1419632e1d6c6c5c13e.tar.gz emacs-fdc9061358d3654e14bfc1419632e1d6c6c5c13e.tar.bz2 emacs-fdc9061358d3654e14bfc1419632e1d6c6c5c13e.zip |
Merge from emacs--rel--22
Patches applied:
* emacs--rel--22 (patch 131-137)
- Update from CVS
- Merge from gnus--rel--5.10
* gnus--rel--5.10 (patch 261-262)
- Update from CVS
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-908
Diffstat (limited to 'lisp/gnus/gnus.el')
-rw-r--r-- | lisp/gnus/gnus.el | 35 |
1 files changed, 17 insertions, 18 deletions
diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el index 0e8e9908cf4..6fe8b1c3cbe 100644 --- a/lisp/gnus/gnus.el +++ b/lisp/gnus/gnus.el @@ -3512,24 +3512,23 @@ that that variable is buffer-local to the summary buffers." (cadar servers))))) (pop servers)) (car servers)) - ;; This could be some sort of foreign server that I - ;; simply haven't opened (yet). Do a brute-force scan - ;; of the entire gnus-newsrc-alist for the server name - ;; of every method. As a side-effect, loads the - ;; gnus-server-method-cache so this only happens once, - ;; if at all. - (let (match) - (mapcar - (lambda (info) - (let ((info-method (gnus-info-method info))) - (unless (stringp info-method) - (let ((info-server (gnus-method-to-server info-method))) - (when (equal server info-server) - (setq match info-method)))))) - (cdr gnus-newsrc-alist)) - match)))) - (when result - (push (cons server result) gnus-server-method-cache)) + ;; This could be some sort of foreign server that I + ;; simply haven't opened (yet). Do a brute-force scan + ;; of the entire gnus-newsrc-alist for the server name + ;; of every method. As a side-effect, loads the + ;; gnus-server-method-cache so this only happens once, + ;; if at all. + (let ((alist (cdr gnus-newsrc-alist)) + method match) + (while alist + (setq method (gnus-info-method (pop alist))) + (when (and (not (stringp method)) + (equal server (gnus-method-to-server method))) + (setq match method + alist nil))) + match)))) + (when result + (push (cons server result) gnus-server-method-cache)) result))) (defsubst gnus-server-get-method (group method) |