(auth-source-search): Only ask a single backend to create the credentials.
authorLars Ingebrigtsen <larsi@gnus.org>
Fri, 18 Feb 2011 22:09:56 +0000 (14:09 -0800)
committerLars Ingebrigtsen <larsi@gnus.org>
Fri, 18 Feb 2011 22:09:56 +0000 (14:09 -0800)
lisp/ChangeLog
lisp/auth-source.el

index 67faeac..b7d4d00 100644 (file)
@@ -4,6 +4,8 @@
        if the caller doesn't want that.
        (auth-source-search): If we don't find a match, don't bug out on
        non-bound variables.
+       (auth-source-search): Only ask a single backend to create the
+       credentials.
 
        * nnimap.el (nnimap-log-command): Add a newline to the inhibited
        logging.
index 64d244b..eede353 100644 (file)
@@ -555,14 +555,15 @@ must call it to obtain the actual value."
       (when (and create
                 (not matches))
        (dolist (backend filtered-backends)
-         (let ((match (apply
-                       (slot-value backend 'search-function)
-                       :backend backend
-                       :create create
-                       :delete delete
-                       spec)))
-           (when match
-             (push (list backend match) matches)))))
+         (unless matches
+           (let ((match (apply
+                         (slot-value backend 'search-function)
+                         :backend backend
+                         :create create
+                         :delete delete
+                         spec)))
+             (when match
+               (push (list backend match) matches))))))
 
       (setq backend (caar matches)
            found-here (cadar matches))