mercurial/dirstate.py
changeset 3628 63e173a4ffbc
parent 3607 f4c9bb4ad7b1
child 3842 47c634bf1e92
--- a/mercurial/dirstate.py
+++ b/mercurial/dirstate.py
@@ -32,7 +32,11 @@ class dirstate(object):
     def getcwd(self):
         cwd = os.getcwd()
         if cwd == self.root: return ''
-        return cwd[len(self.root) + 1:]
+        # self.root ends with a path separator if self.root is '/' or 'C:\'
+        common_prefix_len = len(self.root)
+        if not self.root.endswith(os.sep):
+            common_prefix_len += 1
+        return cwd[common_prefix_len:]
 
     def hgignore(self):
         '''return the contents of .hgignore files as a list of patterns.