copies: compute a suitable TCA if base turns out to be unsuitable
This will be used later in an update to _checkcopies.
(Pierre-Yves David was involved in the cleanup of this patch.)
--- a/mercurial/copies.py Thu Oct 13 01:47:33 2016 +0200
+++ b/mercurial/copies.py Thu Oct 13 02:03:49 2016 +0200
@@ -338,6 +338,10 @@
dirtyc1 = not (base == _c1 or base.descendant(_c1))
dirtyc2 = not (base== _c2 or base.descendant(_c2))
graft = dirtyc1 or dirtyc2
+ tca = base
+ if graft:
+ tca = _c1.ancestor(_c2)
+
limit = _findlimit(repo, c1.rev(), c2.rev())
if limit is None:
# no common ancestor, no copies