diff mercurial/copies.py @ 44210:d0c3eead515a

copies: fix crash when copy source is not in graft base Differential Revision: https://phab.mercurial-scm.org/D8046
author Martin von Zweigbergk <martinvonz@google.com>
date Wed, 29 Jan 2020 23:14:31 -0800
parents fa9ad1da2e77
children b4057d001760
line wrap: on
line diff
--- a/mercurial/copies.py	Wed Jan 29 23:05:02 2020 -0800
+++ b/mercurial/copies.py	Wed Jan 29 23:14:31 2020 -0800
@@ -527,6 +527,11 @@
         if src not in m1:
             # renamed on side 1, deleted on side 2
             renamedelete[src] = dsts1
+    elif src not in mb:
+        # Work around the "short-circuit to avoid issues with merge states"
+        # thing in pathcopies(): pathcopies(x, y) can return a copy where the
+        # destination doesn't exist in y.
+        pass
     elif m2[src] != mb[src]:
         if not _related(c2[src], base[src]):
             return