--- a/mercurial/localrepo.py Sat Mar 10 17:45:32 2007 -0800
+++ b/mercurial/localrepo.py Sat Mar 10 23:21:33 2007 -0300
@@ -873,7 +873,13 @@
if node:
fdict = dict.fromkeys(files)
- for fn in self.manifest.read(self.changelog.read(node)[0]):
+ # for dirstate.walk, files=['.'] means "walk the whole tree".
+ # follow that here, too
+ fdict.pop('.', None)
+ mdict = self.manifest.read(self.changelog.read(node)[0])
+ mfiles = mdict.keys()
+ mfiles.sort()
+ for fn in mfiles:
for ffn in fdict:
# match if the file is the exact name or a directory
if ffn == fn or fn.startswith("%s/" % ffn):
@@ -881,7 +887,9 @@
break
if match(fn):
yield 'm', fn
- for fn in fdict:
+ ffiles = fdict.keys()
+ ffiles.sort()
+ for fn in ffiles:
if badmatch and badmatch(fn):
if match(fn):
yield 'b', fn