On 2010-03-26 09:40 +0000, Christian Dietrich wrote: > Hi, > i can reproduce your bug here with emacs 23.1, and i tried to track > down the problem. But as far as i can see the reordering of the > match results isn't done by ido-set-matches-1. The position of the > matches items in ido-cur-list and in the result of ido-set-matches-1 > is the same. Think of > > (remove-if '(lambda (x) (not (member x after-match)) before-match) > > So i assume that the Problem isn't at that place. > > greetz didi I think I have located the problem. ido-set-matches is called with different args when C-s so it returns different matches. I couldn't understand why it is designed this way. I am surprised no one has been annoyed by this bug. It has caused me to choose the wrong match quite often. I have attempted a fix by simply rotating the ido-matches when rotating.