# HG changeset patch # User Martin von Zweigbergk # Date 2020-01-16 01:15:45 # Node ID 1cb7ae9b00717a15a9c35a4309b8da9ae8c6895e # Parent 4263aaab651d69cea05645d115a059e606967af3 rebase: move some variables after an error cases where they're not needed Differential Revision: https://phab.mercurial-scm.org/D7905 diff --git a/hgext/rebase.py b/hgext/rebase.py --- a/hgext/rebase.py +++ b/hgext/rebase.py @@ -1793,14 +1793,6 @@ def defineparents(repo, rev, destmap, st for i, revs in enumerate(unwanted) if revs is not None ) - base = bases[i] - - # newps[0] should match merge base if possible. Currently, if newps[i] - # is nullrev, the only case is newps[i] and newps[j] (j < i), one is - # the other's ancestor. In that case, it's fine to not swap newps here. - # (see CASE-1 and CASE-2 above) - if i != 0 and newps[i] != nullrev: - newps[0], newps[i] = newps[i], newps[0] # The merge will include unwanted revisions. Abort now. Revisit this if # we have a more advanced merge algorithm that handles multiple bases. @@ -1817,6 +1809,15 @@ def defineparents(repo, rev, destmap, st % (rev, repo[rev], unwanteddesc) ) + base = bases[i] + + # newps[0] should match merge base if possible. Currently, if newps[i] + # is nullrev, the only case is newps[i] and newps[j] (j < i), one is + # the other's ancestor. In that case, it's fine to not swap newps here. + # (see CASE-1 and CASE-2 above) + if i != 0 and newps[i] != nullrev: + newps[0], newps[i] = newps[i], newps[0] + repo.ui.debug(b" future parents are %d and %d\n" % tuple(newps)) return newps[0], newps[1], base