mercurial/dirstate.py
changeset 2486 3ea8111ead90
parent 2485 885de96eb542
child 2661 5c10b7ed3411
child 2844 e196aa1df169
--- a/mercurial/dirstate.py
+++ b/mercurial/dirstate.py
@@ -279,15 +279,11 @@ class dirstate(object):
         blen = len(b)
 
         for x in unknown:
-            bs = bisect.bisect(b, x)
-            if bs != 0 and  b[bs-1] == x:
-                ret[x] = self.map[x]
-                continue
+            bs = bisect.bisect(b, "%s%s" % (x, '/'))
             while bs < blen:
                 s = b[bs]
                 if len(s) > len(x) and s.startswith(x):
-                    if s[len(x)] == '/':
-                        ret[s] = self.map[s]
+                    ret[s] = self.map[s]
                 else:
                     break
                 bs += 1