diff -r db3f42261452 -r aebc3f64b20f mercurial/localrepo.py --- a/mercurial/localrepo.py Sat Aug 26 11:19:00 2006 +0200 +++ b/mercurial/localrepo.py Mon Aug 28 21:49:02 2006 +0200 @@ -641,7 +641,11 @@ if node: fdict = dict.fromkeys(files) for fn in self.manifest.read(self.changelog.read(node)[0]): - fdict.pop(fn, None) + for ffn in fdict: + # match if the file is the exact name or a directory + if ffn == fn or fn.startswith("%s/" % ffn): + del fdict[ffn] + break if match(fn): yield 'm', fn for fn in fdict: