[Request] [+ ] D11423: dirstate: same logic as what we did for `_drop`
marmoute (Pierre-Yves David)
phabricator at mercurial-scm.org
Thu Sep 16 14:42:34 UTC 2021
marmoute created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.
REVISION SUMMARY
This is part of the dirstatemap so let le dirstatemap deal with it.
REPOSITORY
rHG Mercurial
BRANCH
default
REVISION DETAIL
https://phab.mercurial-scm.org/D11423
AFFECTED FILES
mercurial/dirstate.py
mercurial/dirstatemap.py
CHANGE DETAILS
diff --git a/mercurial/dirstatemap.py b/mercurial/dirstatemap.py
--- a/mercurial/dirstatemap.py
+++ b/mercurial/dirstatemap.py
@@ -188,6 +188,7 @@
assert not possibly_dirty
assert not from_p2
new_entry = DirstateItem.new_added()
+ self.copymap.pop(f, None)
elif merged:
assert not possibly_dirty
assert not from_p2
@@ -567,7 +568,7 @@
from_p2=False,
possibly_dirty=False,
):
- return self._rustmap.addfile(
+ ret = self._rustmap.addfile(
f,
mode,
size,
@@ -577,6 +578,9 @@
from_p2,
possibly_dirty,
)
+ if added:
+ self.copymap.pop(f, None)
+ return ret
def reset_state(
self,
diff --git a/mercurial/dirstate.py b/mercurial/dirstate.py
--- a/mercurial/dirstate.py
+++ b/mercurial/dirstate.py
@@ -738,7 +738,6 @@
def _add(self, filename):
"""internal function to mark a file as added"""
self._addpath(filename, added=True)
- self._map.copymap.pop(filename, None)
def _drop(self, filename):
"""internal function to drop a file from the dirstate"""
To: marmoute, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mercurial-scm.org/pipermail/mercurial-patches/attachments/20210916/b42d1d36/attachment.html>
More information about the Mercurial-patches
mailing list