From 1fe0787fcd0c74fa242f714d60e94543c0d8cd0c Mon Sep 17 00:00:00 2001 From: Lars Magne Ingebrigtsen Date: Mon, 8 Nov 2010 01:38:47 +0000 Subject: [PATCH] gnus-group.el (gnus-group-read-ephemeral-group, gnus-group-make-group): Remove superfluous ": " from the prompt. gnus-start.el (gnus-get-unread-articles, gnus-read-active-file): Ignore totally non-existent methods. --- lisp/gnus/ChangeLog | 10 ++++++++++ lisp/gnus/gnus-group.el | 4 ++-- lisp/gnus/gnus-start.el | 28 +++++++++++++++++----------- 3 files changed, 29 insertions(+), 13 deletions(-) diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 04f9f71594d..4855dc195ea 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,13 @@ +2010-11-07 Lars Magne Ingebrigtsen + + * gnus-start.el (gnus-get-unread-articles): Ignore totally non-existent + methods. + (gnus-read-active-file): Ditto. + + * gnus-group.el (gnus-group-read-ephemeral-group): Remove superfluous + ": " from the prompt. + (gnus-group-make-group): Ditto. + 2010-11-07 Glenn Morris * gnus-bookmark.el (gnus-bookmark-bmenu-show-infos) diff --git a/lisp/gnus/gnus-group.el b/lisp/gnus/gnus-group.el index 5a65d30ec1c..5ece1457163 100644 --- a/lisp/gnus/gnus-group.el +++ b/lisp/gnus/gnus-group.el @@ -2267,7 +2267,7 @@ Return the name of the group if selection was successful." (list ;; (gnus-read-group "Group name: ") (gnus-group-completing-read) - (gnus-read-method "From method: "))) + (gnus-read-method "From method"))) ;; Transform the select method into a unique server. (when (stringp method) (setq method (gnus-server-to-method method))) @@ -2674,7 +2674,7 @@ server." (interactive (list (gnus-read-group "Group name: ") - (gnus-read-method "From method: "))) + (gnus-read-method "From method"))) (when (stringp method) (setq method (or (gnus-server-to-method method) method))) diff --git a/lisp/gnus/gnus-start.el b/lisp/gnus/gnus-start.el index 2466ddd28b7..8663d67fd0a 100644 --- a/lisp/gnus/gnus-start.el +++ b/lisp/gnus/gnus-start.el @@ -1702,16 +1702,20 @@ If SCAN, request a scan of that group as well." (destructuring-bind (method method-type infos dummy) elem (when (and method infos (not (gnus-method-denied-p method))) - (unless (gnus-server-opened method) - (gnus-open-server method)) - (when (and - (gnus-server-opened method) - (gnus-check-backend-function - 'retrieve-group-data-early (car method))) - (when (gnus-check-backend-function 'request-scan (car method)) - (gnus-request-scan nil method)) - (setcar (nthcdr 3 elem) - (gnus-retrieve-group-data-early method infos)))))) + ;; If the open-server method doesn't exist, then the method + ;; itself doesn't exist, so we ignore it. + (if (not (ignore-errors (gnus-get-function method 'open-server))) + (setq type-cache (delq elem type-cache)) + (unless (gnus-server-opened method) + (gnus-open-server method)) + (when (and + (gnus-server-opened method) + (gnus-check-backend-function + 'retrieve-group-data-early (car method))) + (when (gnus-check-backend-function 'request-scan (car method)) + (gnus-request-scan nil method)) + (setcar (nthcdr 3 elem) + (gnus-retrieve-group-data-early method infos))))))) ;; Do the rest of the retrieval. (dolist (elem type-cache) @@ -1982,7 +1986,9 @@ If SCAN, request a scan of that group as well." (while (setq method (pop methods)) ;; Only do each method once, in case the methods appear more ;; than once in this list. - (unless (member method methods) + (when (and (not (member method methods)) + ;; Check whether the backend exists. + (ignore-errors (gnus-get-function method 'open-server))) (if (or debug-on-error debug-on-quit) (gnus-read-active-file-1 method force) (condition-case () -- 2.39.5