--- a/mercurial/localrepo.py Mon Dec 26 18:07:49 2011 -0600
+++ b/mercurial/localrepo.py Mon Dec 26 18:08:20 2011 -0600
@@ -128,6 +128,7 @@
if not path.startswith(self.root):
return False
subpath = path[len(self.root) + 1:]
+ normsubpath = util.pconvert(subpath)
# XXX: Checking against the current working copy is wrong in
# the sense that it can reject things like
@@ -149,9 +150,9 @@
ctx = self[None]
parts = util.splitpath(subpath)
while parts:
- prefix = os.sep.join(parts)
+ prefix = '/'.join(parts)
if prefix in ctx.substate:
- if prefix == subpath:
+ if prefix == normsubpath:
return True
else:
sub = ctx.sub(prefix)
--- a/mercurial/scmutil.py Mon Dec 26 18:07:49 2011 -0600
+++ b/mercurial/scmutil.py Mon Dec 26 18:08:20 2011 -0600
@@ -85,6 +85,7 @@
'''Check the relative path.
path may contain a pattern (e.g. foodir/**.txt)'''
+ path = util.localpath(path)
normpath = self.normcase(path)
if normpath in self.audited:
return
--- a/mercurial/subrepo.py Mon Dec 26 18:07:49 2011 -0600
+++ b/mercurial/subrepo.py Mon Dec 26 18:08:20 2011 -0600
@@ -92,7 +92,7 @@
src = remapped
src = remap(src)
- state[path] = (src.strip(), rev.get(path, ''), kind)
+ state[util.pconvert(path)] = (src.strip(), rev.get(path, ''), kind)
return state