--- a/mercurial/dirstate.py Sun Jun 07 21:16:05 2009 +0200
+++ b/mercurial/dirstate.py Mon Jun 08 18:14:44 2009 -0500
@@ -114,12 +114,6 @@
def _checkcase(self):
return not util.checkcase(self._join('.hg'))
- @propertycache
- def normalize(self):
- if self._checkcase:
- return self._normalize
- return lambda x, y=False: x
-
def _join(self, f):
# much faster than os.path.join()
# it's safe because f is always a relative path
@@ -345,7 +339,7 @@
except KeyError:
self._ui.warn(_("not in dirstate: %s\n") % f)
- def _normalize(self, path, knownpath=False):
+ def _normalize(self, path, knownpath):
norm_path = os.path.normcase(path)
fold_path = self._foldmap.get(norm_path, None)
if fold_path is None:
@@ -450,7 +444,6 @@
badfn = match.bad
dmap = self._map
normpath = util.normpath
- normalize = self.normalize
listdir = osutil.listdir
lstat = os.lstat
getkind = stat.S_IFMT
@@ -461,6 +454,11 @@
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
@@ -475,7 +473,7 @@
# step 1: find all explicit files
for ff in sorted(files):
- nf = normalize(normpath(ff))
+ nf = normalize(normpath(ff), True)
if nf in results:
continue