# HG changeset patch # User Christian Boos # Date 1257770482 -3600 # Node ID 88f6a218b74d2ef7b3e14c27bb7560255e8c9e94 # Parent 4ce13d7c6b8855e028dd284e03d416400fcb5225 rebase: really enforce use of special ancestor for merge (issue1561) diff --git a/hgext/rebase.py b/hgext/rebase.py --- a/hgext/rebase.py +++ b/hgext/rebase.py @@ -27,7 +27,6 @@ oldancestor = ancestor.ancestor def newancestor(a, b, pfunc): - ancestor.ancestor = oldancestor if b == rev: return repo[rev].parents()[0].rev() return ancestor.ancestor(a, b, pfunc) @@ -36,8 +35,11 @@ ancestor.ancestor = newancestor else: repo.ui.debug("first revision, do not change ancestor\n") - stats = merge.update(repo, rev, True, True, False) - return stats + try: + stats = merge.update(repo, rev, True, True, False) + return stats + finally: + ancestor.ancestor = oldancestor def rebase(ui, repo, **opts): """move changeset (and descendants) to a different branch