summaryrefslogtreecommitdiff
path: root/lisp/ido.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/ido.el')
-rw-r--r--lisp/ido.el5
1 files changed, 5 insertions, 0 deletions
diff --git a/lisp/ido.el b/lisp/ido.el
index b398e68319d..e02028e526c 100644
--- a/lisp/ido.el
+++ b/lisp/ido.el
@@ -1046,6 +1046,9 @@ so that it doesn't interfere with other minibuffer usage.")
;; Stores the current ido item type ('file, 'dir, 'buffer, or 'list).
(defvar ido-cur-item)
+;;; Stores the current default item
+(defvar ido-default-item)
+
;; Stores the current list of items that will be searched through.
;; The list is ordered, so that the most interesting item comes first,
;; although by default, the files visible in the current frame are put
@@ -3580,6 +3583,8 @@ for first matching file."
(string-match re name))
(cond
((and (eq ido-cur-item 'buffer)
+ (or (not (stringp ido-default-item))
+ (not (string= name ido-default-item)))
(string= name (buffer-name ido-entry-buffer)))
(setq matches (cons item matches)))
((and full-re (string-match full-re name))