diff -r 66dab0d9a78e -r 30862e226339 mercurial/copies.py --- a/mercurial/copies.py Tue Feb 04 10:14:44 2020 -0800 +++ b/mercurial/copies.py Tue Feb 04 10:16:30 2020 -0800 @@ -403,13 +403,15 @@ ) if x == y or not x or not y: return {} + if y.rev() is None and x == y.p1(): + if debug: + repo.ui.debug(b'debug.copies: search mode: dirstate\n') + # short-circuit to avoid issues with merge states + return _dirstatecopies(repo, match) a = y.ancestor(x) if a == x: if debug: repo.ui.debug(b'debug.copies: search mode: forward\n') - if y.rev() is None and x == y.p1(): - # short-circuit to avoid issues with merge states - return _dirstatecopies(repo, match) copies = _forwardcopies(x, y, match=match) elif a == y: if debug: