rebase -i: abort cleanly if the editor fails to launch

If the user's configured editor is emacsclient, the editor
will fail to launch if emacs is not running and the git
command that tried to lanuch the editor will abort. For most
commands, all you have to do is to start emacs and repeat
the command.

The "git rebase -i" command, however, aborts without cleaning
the "$GIT_DIR/rebase-merge" directory if it fails to launch the
editor, so you'll need to do "git rebase --abort" before
repeating the rebase command.

Change "git rebase -i" to terminate using "die_abort" (instead of
with "die") if the initial launch of the editor fails.

Signed-off-by: Björn Gustavsson <bgustavsson@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Björn Gustavsson 2009-12-19 13:04:03 +01:00 committed by Junio C Hamano
parent afab0fe052
commit e49ca974d6

View file

@ -770,7 +770,7 @@ EOF
cp "$TODO" "$TODO".backup
git_editor "$TODO" ||
die "Could not execute editor"
die_abort "Could not execute editor"
has_action "$TODO" ||
die_abort "Nothing to do"