diff --git a/hgext/rebase.py b/hgext/rebase.py --- a/hgext/rebase.py +++ b/hgext/rebase.py @@ -949,6 +949,9 @@ except error.InMemoryMergeConflictsError: ui.status(_('hit a merge conflict\n')) return 1 + except error.Abort: + needsabort = False + raise else: if confirm: ui.status(_('rebase completed successfully\n')) diff --git a/tests/test-rebase-dest.t b/tests/test-rebase-dest.t --- a/tests/test-rebase-dest.t +++ b/tests/test-rebase-dest.t @@ -214,7 +214,7 @@ > | > Z > EOS - abort: no rebase in progress + abort: source and destination form a cycle starting dry-run rebase; repository will not be changed [255]