D1343: dirstate: move dropping of folded filenames into the dirstate map
mbthomas (Mark Thomas)
phabricator at mercurial-scm.org
Mon Nov 13 07:18:24 EST 2017
mbthomas updated this revision to Diff 3440.
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D1343?vs=3343&id=3440
REVISION DETAIL
https://phab.mercurial-scm.org/D1343
AFFECTED FILES
mercurial/dirstate.py
CHANGE DETAILS
diff --git a/mercurial/dirstate.py b/mercurial/dirstate.py
--- a/mercurial/dirstate.py
+++ b/mercurial/dirstate.py
@@ -387,11 +387,6 @@
return self._map.copymap
def _droppath(self, f):
- if "filefoldmap" in self._map.__dict__:
- normed = util.normcase(f)
- if normed in self._map.filefoldmap:
- del self._map.filefoldmap[normed]
-
self._updatedfiles.add(f)
def _addpath(self, f, state, mode, size, mtime):
@@ -1215,9 +1210,6 @@
- `dirfoldmap` is a dict mapping normalized directory names to the
denormalized form that they appear as in the dirstate.
-
- Once instantiated, the filefoldmap and dirfoldmap views must be maintained
- by the caller.
'''
def __init__(self, ui, opener, root):
@@ -1299,6 +1291,9 @@
"""
if oldstate not in "?r" and "dirs" in self.__dict__:
self.dirs.delpath(f)
+ if "filefoldmap" in self.__dict__:
+ normed = util.normcase(f)
+ self.filefoldmap.pop(normed, None)
self._map[f] = dirstatetuple('r', 0, size, 0)
self.nonnormalset.add(f)
@@ -1312,6 +1307,9 @@
if oldstate != "r" and "dirs" in self.__dict__:
self.dirs.delpath(f)
del self._map[f]
+ if "filefoldmap" in self.__dict__:
+ normed = util.normcase(f)
+ self.filefoldmap.pop(normed, None)
self.nonnormalset.discard(f)
return exists
To: mbthomas, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list