diff mercurial/copies.py @ 42318:313812cbf4ca

copies: fix duplicatecopies() with overlay context The reasoning for this check is in 78d760aa3607 (duplicatecopies: do not mark items not in the dirstate as copies, 2013-03-28). The check was then moved to workingfilectx in 754b5117622f (context: add workingfilectx.markcopied, 2017-10-15) and no corresponding check was added later when overlayworkingfilectx was added. Rather than adding the check there, this patch adds a more generic check on the callers side and removes the check in workingfilectx.markcopied(). Differential Revision: https://phab.mercurial-scm.org/D6380
author Martin von Zweigbergk <martinvonz@google.com>
date Wed, 09 Jan 2019 15:54:45 -0800
parents d1c7446d0c58
children c361db7a5f14
line wrap: on
line diff
--- a/mercurial/copies.py	Wed May 15 16:10:52 2019 -0700
+++ b/mercurial/copies.py	Wed Jan 09 15:54:45 2019 -0800
@@ -798,4 +798,5 @@
     for dst, src in pathcopies(repo[fromrev], repo[rev]).iteritems():
         if dst in exclude:
             continue
-        wctx[dst].markcopied(src)
+        if dst in wctx:
+            wctx[dst].markcopied(src)