diff mercurial/commands.py @ 726:809a870a0e73

Add a source designator to the walk methods. If the source is 'f' (the filesystem), the file definitely exists in the filesystem. If 'm' (a rev or dirstate manifest), the file may not still exist with the given name.
author Bryan O'Sullivan <bos@serpentine.com>
date Tue, 19 Jul 2005 07:15:59 -0800
parents c6b912f8b5b2
children acee766fcb79
line wrap: on
line diff
--- a/mercurial/commands.py	Tue Jul 19 07:00:03 2005 -0800
+++ b/mercurial/commands.py	Tue Jul 19 07:15:59 2005 -0800
@@ -65,9 +65,9 @@
 def walk(repo, pats, opts):
     cwd = repo.getcwd()
     if cwd: c = len(cwd) + 1
-    for fn in repo.walk(match = matchpats(repo.ui, cwd, pats, opts)):
-        if cwd: yield fn, fn[c:]
-        else: yield fn, fn
+    for src, fn in repo.walk(match = matchpats(repo.ui, cwd, pats, opts)):
+        if cwd: yield src, fn, fn[c:]
+        else: yield src, fn, fn
 
 revrangesep = ':'
 
@@ -325,7 +325,7 @@
     '''add the specified files on the next commit'''
     names = []
     q = dict(zip(pats, pats))
-    for abs, rel in walk(repo, pats, opts):
+    for src, abs, rel in walk(repo, pats, opts):
         if rel in q or abs in q:
             names.append(abs)
         elif repo.dirstate.state(abs) == '?':
@@ -715,7 +715,7 @@
     if opts['print0']: end = '\0'
     else: end = '\n'
     opts['rootless'] = True
-    for abs, rel in walk(repo, pats, opts):
+    for src, abs, rel in walk(repo, pats, opts):
         if repo.dirstate.state(abs) == '?': continue
         if opts['fullpath']:
             ui.write(os.path.join(repo.root, abs), end)