diff -r 9b0efacd7745 -r 5b384b7f48d5 mercurial/localrepo.py --- 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)