diff mercurial/localrepo.py @ 4525:78b6add1f966

Add dirstate.pathto and localrepo.pathto. Every time util.pathto is called, we have to pass the repo root and the repo cwd. dirstate.pathto is a simple convenience function that knows about the root and the cwd arguments. It's still possible to pass the cwd as an optimization. localrepo.pathto is a convenience function that just calls dirstate.pathto, just like localrepo.getcwd. dirstate.pathto becomes a single point that converts most (all?) paths from the internal representation to some OS-specific relative path for display purposes.
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Fri, 08 Jun 2007 23:49:12 -0300
parents 96d8a56d4ef9
children 0ac7fee4f024
line wrap: on
line diff
--- a/mercurial/localrepo.py
+++ b/mercurial/localrepo.py
@@ -505,6 +505,9 @@ class localrepository(repo.repository):
     def getcwd(self):
         return self.dirstate.getcwd()
 
+    def pathto(self, f, cwd=None):
+        return self.dirstate.pathto(f, cwd)
+
     def wfile(self, f, mode='r'):
         return self.wopener(f, mode)
 
@@ -888,8 +891,8 @@ class localrepository(repo.repository):
                     if match(fn):
                         yield 'b', fn
                 else:
-                    self.ui.warn(_('%s: No such file in rev %s\n') % (
-                        util.pathto(self.root, self.getcwd(), fn), short(node)))
+                    self.ui.warn(_('%s: No such file in rev %s\n')
+                                 % (self.pathto(fn), short(node)))
         else:
             for src, fn in self.dirstate.walk(files, match, badmatch=badmatch):
                 yield src, fn