]> granicus.if.org Git - git/commitdiff
rebase: do not continue when the todo list generation failed
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Fri, 22 Dec 2017 23:55:38 +0000 (00:55 +0100)
committerJunio C Hamano <gitster@pobox.com>
Wed, 27 Dec 2017 20:33:38 +0000 (12:33 -0800)
This is a *really* long-standing bug. As a matter of fact, this bug has
been with us from the very beginning of `rebase -i`: 1b1dce4bae7 (Teach
rebase an interactive mode, 2007-06-25), where the output of `rev-list`
was piped to `sed` (and any failure of the `rev-list` process would go
completely undetected).

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-rebase--interactive.sh

index e3f5a0abf3c76c6e6b1e4528a20fca4c8784894b..b7f95672bd90ba04564e1446c97be887645706de 100644 (file)
@@ -893,7 +893,8 @@ fi
 if test t != "$preserve_merges"
 then
        git rebase--helper --make-script ${keep_empty:+--keep-empty} \
-               $revisions ${restrict_revision+^$restrict_revision} >"$todo"
+               $revisions ${restrict_revision+^$restrict_revision} >"$todo" ||
+       die "$(gettext "Could not generate todo list")"
 else
        format=$(git config --get rebase.instructionFormat)
        # the 'rev-list .. | sed' requires %m to parse; the instruction requires %H to parse