diff -r 3e2d8120528b -r 6c05eebd9fab hgext/rebase.py --- a/hgext/rebase.py Tue Jun 19 19:45:00 2012 +0200 +++ b/hgext/rebase.py Thu Jun 21 15:10:01 2012 +0200 @@ -568,10 +568,11 @@ def abort(repo, originalwd, target, state): 'Restore the repository to its original state' dstates = [s for s in state.values() if s != nullrev] - if [d for d in dstates if not repo[d].mutable()]: - repo.ui.warn(_("warning: immutable rebased changeset detected, " - "can't abort\n")) - return -1 + immutable = [d for d in dstates if not repo[d].mutable()] + if immutable: + raise util.Abort(_("can't abort rebase due to immutable changesets %s") + % ', '.join(str(repo[r]) for r in immutable), + hint=_('see hg help phases for details')) descendants = set() if dstates: