          buf)
     (when create-or-buffer
       (if (bufferp create-or-buffer)
-          (add-to-list 'anything-candidate-buffer-alist
-                       (cons anything-source-name create-or-buffer))
+          (setq anything-candidate-buffer-alist
+                (cons (cons anything-source-name create-or-buffer)
+                      (delete (assoc anything-source-name anything-candidate-buffer-alist)
+                              anything-candidate-buffer-alist)))
+        (add-to-list 'anything-candidate-buffer-alist
+                     (cons anything-source-name create-or-buffer))
         (when (eq create-or-buffer 'global)
           (loop for b in (buffer-list)
                 if (string-match (format "^%s" (regexp-quote gbufname)) (buffer-name b))

;; New maintainer.
;;

(defvar anything-version "$Id: anything.el,v 1.175 2009/03/22 19:10:37 rubikitch Exp rubikitch $")
(require 'cl)

;; (@* "User Configuration")


;; (@* "HISTORY")
;; $Log: anything.el,v $
;; Revision 1.176  2009/04/08 14:48:15  rubikitch
;; bug fix in `anything-candidate-buffer'
;;
;; Revision 1.175  2009/03/22 19:10:37  rubikitch
;; New Variable: `anything-scroll-amount' (thx. ThierryVolpiatto)
;;
