# HG changeset patch # User Pierre-Yves David # Date 1626307111 -7200 # Node ID e59bd6723f2facdad697ad8264340b7baf6fea5d # Parent e43128ee436ff2f239736118df093ec93f26b95f dirstate-map: factor out the change to _dirs and _alldirs on adding This logic is complicated enough to deserves its own function. So it now does. This will make it easier to reuse that logic in later changeset. Differential Revision: https://phab.mercurial-scm.org/D11129 diff -r e43128ee436f -r e59bd6723f2f mercurial/dirstatemap.py --- a/mercurial/dirstatemap.py Wed Jul 14 22:06:13 2021 +0200 +++ b/mercurial/dirstatemap.py Thu Jul 15 01:58:31 2021 +0200 @@ -146,6 +146,15 @@ """Loads the underlying data, if it's not already loaded""" self._map + def _dirs_incr(self, filename, old_entry=None): + """incremente the dirstate counter if applicable""" + if ( + old_entry is None or old_entry.removed + ) and "_dirs" in self.__dict__: + self._dirs.addpath(filename) + if old_entry is None and "_alldirs" in self.__dict__: + self._alldirs.addpath(filename) + def addfile( self, f, @@ -190,12 +199,7 @@ assert size is not None assert mtime is not None old_entry = self.get(f) - if ( - old_entry is None or old_entry.removed - ) and "_dirs" in self.__dict__: - self._dirs.addpath(f) - if old_entry is None and "_alldirs" in self.__dict__: - self._alldirs.addpath(f) + self._dirs_incr(f, old_entry) e = self._map[f] = DirstateItem(state, mode, size, mtime) if e.dm_nonnormal: self.nonnormalset.add(f)