diff --git a/mercurial/dirstate.py b/mercurial/dirstate.py --- a/mercurial/dirstate.py +++ b/mercurial/dirstate.py @@ -485,11 +485,6 @@ class dirstate(object): work = [] wadd = work.append - if self._checkcase: - normalize = self._normalize - else: - normalize = lambda x, y: x - exact = skipstep3 = False if matchfn == match.exact: # match.exact exact = True @@ -497,6 +492,12 @@ class dirstate(object): elif match.files() and not match.anypats(): # match.match, no patterns skipstep3 = True + if self._checkcase: + normalize = self._normalize + skipstep3 = False + else: + normalize = lambda x, y: x + files = sorted(match.files()) subrepos.sort() i, j = 0, 0