backout: use commonancestorsheads for checking linear heritage
If two revisions are linearly related, there will only be one ancestor, and
commonancestors and commonancestorsheads would give the same result.
commonancestorsheads is however slightly simpler, faster and more correct.
--- a/mercurial/commands.py Thu Apr 17 20:01:35 2014 +0200
+++ b/mercurial/commands.py Thu Apr 17 20:01:39 2014 +0200
@@ -438,7 +438,7 @@
node = scmutil.revsingle(repo, rev).node()
op1, op2 = repo.dirstate.parents()
- if node not in repo.changelog.commonancestors(op1, node):
+ if node not in repo.changelog.commonancestorsheads(op1, node):
raise util.Abort(_('cannot backout change that is not an ancestor'))
p1, p2 = repo.changelog.parents(node)