]> git.eshelyaron.com Git - emacs.git/commitdiff
* ido.el (ido-may-cache-directory): Move "too-big" check later.
authorKim F. Storm <storm@cua.dk>
Thu, 13 Jan 2011 16:26:40 +0000 (17:26 +0100)
committerKim F. Storm <storm@cua.dk>
Thu, 13 Jan 2011 16:26:40 +0000 (17:26 +0100)
(ido-next-match, ido-prev-match): Fix stray reordering of matching
items when cycling through the matches.

lisp/ChangeLog
lisp/ido.el

index b7e1ed62d7bec1aa38e7d20ad3da6bb138e3c123..eafb096f499327be17789a66b4ad833c09008636 100644 (file)
@@ -1,3 +1,9 @@
+2011-01-13  Kim F. Storm  <storm@cua.dk>
+
+       * ido.el (ido-may-cache-directory): Move "too-big" check later.
+       (ido-next-match, ido-prev-match): Fix stray reordering of matching
+       items when cycling through the matches.
+
 2011-01-13  Tassilo Horn  <tassilo@member.fsf.org>
 
        * dired-x.el (dired-omit-verbose): New defcustom that allows
index 84ae93142b45c41dc85eab8f36da92d22143bb08..502dd39e32790e84fa92afeff03d113d1ad804a1 100644 (file)
@@ -1289,8 +1289,6 @@ Only used if `ido-use-virtual-buffers' is non-nil.")
 (defun ido-may-cache-directory (&optional dir)
   (setq dir (or dir ido-current-directory))
   (cond
-   ((ido-directory-too-big-p dir)
-    nil)
    ((and (ido-is-root-directory dir)
         (or ido-enable-tramp-completion
             (memq system-type '(windows-nt ms-dos))))
@@ -1299,6 +1297,8 @@ Only used if `ido-use-virtual-buffers' is non-nil.")
     (ido-cache-unc-valid))
    ((ido-is-ftp-directory dir)
     (ido-cache-ftp-valid))
+   ((ido-directory-too-big-p dir)
+    nil)
    (t t)))
 
 (defun ido-pp (list &optional sep)
@@ -3072,8 +3072,8 @@ If repeated, insert text from buffer instead."
   (if ido-matches
       (let ((next (cadr ido-matches)))
        (setq ido-cur-list (ido-chop ido-cur-list next))
-       (setq ido-rescan t)
-       (setq ido-rotate t))))
+       (setq ido-matches (ido-chop ido-matches next))
+       (setq ido-rescan nil))))
 
 (defun ido-prev-match ()
   "Put last element of `ido-matches' at the front of the list."
@@ -3081,8 +3081,8 @@ If repeated, insert text from buffer instead."
   (if ido-matches
       (let ((prev (car (last ido-matches))))
        (setq ido-cur-list (ido-chop ido-cur-list prev))
-       (setq ido-rescan t)
-       (setq ido-rotate t))))
+       (setq ido-matches (ido-chop ido-matches prev))
+       (setq ido-rescan nil))))
 
 (defun ido-next-match-dir ()
   "Find next directory in match list.