]> git.eshelyaron.com Git - emacs.git/commitdiff
gnus.el: More fixes to not list ephemeral servers in the server buffer
authorLars Ingebrigtsen <larsi@gnus.org>
Thu, 9 Feb 2012 01:12:44 +0000 (01:12 +0000)
committerKatsumi Yamaoka <yamaoka@jpl.org>
Thu, 9 Feb 2012 01:12:44 +0000 (01:12 +0000)
lisp/gnus/ChangeLog
lisp/gnus/gnus.el

index f57268f110ae6294c06e855e3db7bef890d1ac50..9cd6879988ba34c71c5c1d554013d4b979180aee 100644 (file)
@@ -1,3 +1,8 @@
+2012-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
+
+       * 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  <larsi@gnus.org>
 
        * gnus-sum.el (gnus-summary-insert-old-articles): Use a default instead
index f3826e9f50121ae7b7b51999a5222d4e3248a915..76003f4eec2254855d835c48ca899006aff389fa 100644 (file)
@@ -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."