Mercurial > hg
changeset 51489:659f766629c8
branchcache: stop using `copy(…)` in `replace(…)`
The `copy` method is mostly used for a filter level to inherit the branchmap
from a subset. So we stop using (abusing) it in "replace" to ensure `copy` is
used only for inheritance purposes.
Since `replace` is a method of the BranchMapCache, it seems fine to do lower
level operation there.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Sat, 09 Mar 2024 02:07:15 +0100 |
parents | 94f821490645 |
children | 18c2753434f2 |
files | mercurial/branchmap.py |
diffstat | 1 files changed, 3 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/branchmap.py Fri Mar 08 16:47:32 2024 +0100 +++ b/mercurial/branchmap.py Sat Mar 09 02:07:15 2024 +0100 @@ -157,7 +157,9 @@ for candidate in (b'base', b'immutable', b'served'): rview = repo.filtered(candidate) if cache.validfor(rview): - cache = self._per_filter[candidate] = cache.copy(rview) + cache._filtername = candidate + self._per_filter[candidate] = cache + cache._dirty = True cache.write(rview) return