diff mercurial/localrepo.py @ 3016:aebc3f64b20f

fix incorrect warning when walking on a particular rev when a directory was given instead of a file it reported incorrectly 'No such file or directory in rev <rev>' we test if the file is a prefix directory
author Benoit Boissinot <benoit.boissinot@ens-lyon.org>
date Mon, 28 Aug 2006 21:49:02 +0200
parents eef469259745
children 4d0e0f149581
line wrap: on
line diff
--- a/mercurial/localrepo.py
+++ b/mercurial/localrepo.py
@@ -641,7 +641,11 @@ class localrepository(repo.repository):
         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: