changeset 26316:d5618e210191

copies: begin separating mergecopies sides
author Matt Mackall <mpm@selenic.com>
date Wed, 19 Aug 2015 13:40:18 -0500
parents 3c6902ed9f07
children 07ac78ba2e37
files mercurial/copies.py
diffstat 1 files changed, 9 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/copies.py	Wed Aug 19 13:09:54 2015 -0500
+++ b/mercurial/copies.py	Wed Aug 19 13:40:18 2015 -0500
@@ -316,9 +316,9 @@
             return fctx
         return util.lrucachefunc(makectx)
 
-    copy = {}
-    movewithdir = {}
-    fullcopy = {}
+    copy1, copy2, = {}, {}
+    movewithdir1, movewithdir2 = {}, {}
+    fullcopy1, fullcopy2 = {}, {}
     diverge = {}
 
     repo.ui.debug("  searching for copies back to rev %d\n" % limit)
@@ -329,11 +329,15 @@
 
     for f in u1:
         getfctx = setupctx(c1)
-        checkcopies(getfctx, f, m1, m2, ca, limit, diverge, copy, fullcopy)
+        checkcopies(getfctx, f, m1, m2, ca, limit, diverge, copy1, fullcopy1)
 
     for f in u2:
         getfctx = setupctx(c2)
-        checkcopies(getfctx, f, m2, m1, ca, limit, diverge, copy, fullcopy)
+        checkcopies(getfctx, f, m2, m1, ca, limit, diverge, copy2, fullcopy2)
+
+    copy = dict(copy1.items() + copy2.items())
+    movewithdir = dict(movewithdir1.items() + movewithdir2.items())
+    fullcopy = dict(fullcopy1.items() + fullcopy2.items())
 
     renamedelete = {}
     renamedelete2 = set()