diff --git a/mercurial/dirstate.py b/mercurial/dirstate.py --- a/mercurial/dirstate.py +++ b/mercurial/dirstate.py @@ -78,10 +78,6 @@ class dirstate(object): return self._copymap @propertycache - def _normroot(self): - return util.normcase(self._root) - - @propertycache def _foldmap(self): f = {} for name in self._map: @@ -406,7 +402,7 @@ class dirstate(object): folded = path else: folded = self._foldmap.setdefault(normed, - util.fspath(normed, self._normroot)) + util.fspath(normed, self._root)) return folded def normalize(self, path, isknown=False): diff --git a/mercurial/merge.py b/mercurial/merge.py --- a/mercurial/merge.py +++ b/mercurial/merge.py @@ -170,7 +170,7 @@ def manifestmerge(repo, p1, p2, pa, over if m and m != a: # changed from a to m return m if n and n != a: # changed from a to n - if (n == 'l' or a == 'l') and m1[f] != ma[f]: + if (n == 'l' or a == 'l') and m1.get(f) != ma.get(f): # can't automatically merge symlink flag when there # are file-level conflicts here, let filemerge take # care of it