changeset 44039:0750cbffdb3b

movedirstate: get copies from dirstate before setting parents Setting dirstate parents can modify the copies recorded in the dirstate when there are two dirstate parents. I don't think we ever call movedirstate() when there is more than one parent, but it seems clearer to get the copies from the dirstate first anyway. Differential Revision: https://phab.mercurial-scm.org/D7800
author Martin von Zweigbergk <martinvonz@google.com>
date Fri, 27 Dec 2019 12:41:56 -0800
parents 98944715a02c
children f652b7ddc1d4
files mercurial/scmutil.py
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/scmutil.py	Thu Dec 12 14:31:11 2019 -0800
+++ b/mercurial/scmutil.py	Fri Dec 27 12:41:56 2019 -0800
@@ -1431,8 +1431,8 @@
     """
     oldctx = repo[b'.']
     ds = repo.dirstate
+    copies = dict(ds.copies())
     ds.setparents(newctx.node(), nullid)
-    copies = dict(ds.copies())
     s = newctx.status(oldctx, match=match)
     for f in s.modified:
         if ds[f] == b'r':