From d25ceb5273f73a26b2b28cfa9a2fc3f014522f91 Mon Sep 17 00:00:00 2001 From: Lars Ingebrigtsen Date: Thu, 9 Feb 2012 01:12:44 +0000 Subject: [PATCH] gnus.el: More fixes to not list ephemeral servers in the server buffer --- lisp/gnus/ChangeLog | 5 +++++ lisp/gnus/gnus.el | 17 +++++++++++------ 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index f57268f110a..9cd6879988b 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,8 @@ +2012-02-09 Lars Ingebrigtsen + + * gnus.el (gnus-server-extend-method): Don't add an -address component + if the method already has one (bug#9676). + 2012-02-08 Lars Ingebrigtsen * gnus-sum.el (gnus-summary-insert-old-articles): Use a default instead diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el index f3826e9f501..76003f4eec2 100644 --- a/lisp/gnus/gnus.el +++ b/lisp/gnus/gnus.el @@ -4123,12 +4123,17 @@ parameters." (if (or (not (inline (gnus-similar-server-opened method))) (not (cddr method))) method - (setq method - `(,(car method) ,(concat (cadr method) "+" group) - (,(intern (format "%s-address" (car method))) ,(cadr method)) - ,@(cddr method))) - (push method gnus-extended-servers) - method)) + (let ((address-slot + (intern (format "%s-address" (car method))))) + (setq method + (if (assq address-slot (cddr method)) + `(,(car method) ,(concat (cadr method) "+" group) + ,@(cddr method)) + `(,(car method) ,(concat (cadr method) "+" group) + (,address-slot ,(cadr method)) + ,@(cddr method)))) + (push method gnus-extended-servers) + method))) (defun gnus-server-status (method) "Return the status of METHOD." -- 2.39.2