rebase: report invalid commit correctly
authorErik Faye-Lund <kusmabite@gmail.com>
Wed, 30 May 2012 16:39:42 +0000 (18:39 +0200)
committerJunio C Hamano <gitster@pobox.com>
Wed, 30 May 2012 18:59:08 +0000 (11:59 -0700)
In 9765b6a (rebase: align variable content, 2011-02-06), the code
to error out was moved up one level. Unfortunately, one reference
to a function parameter wasn't rewritten as it should, leading to
the wrong parameter being errored on.

This error was propagated by 71786f5 (rebase: factor out reference
parsing, 2011-02-06) and merged in 78c6e0f (Merge branch
'mz/rebase', 2011-04-28).

Correct this by reporting $onto_name istead.

Reported-By: Manuela Hutter <manuelah@opera.com>
Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-rebase.sh
t/t3406-rebase-message.sh

index 0f5f5fb206e74d996eb096aea7833708bdccb71c..5e3c42cb1150a6af18003db51e7d5cc1accb4842 100755 (executable)
@@ -469,7 +469,7 @@ case "$onto_name" in
        ;;
 *)
        onto=$(git rev-parse --verify "${onto_name}^0") ||
-       die "Does not point to a valid commit: $1"
+       die "Does not point to a valid commit: $onto_name"
        ;;
 esac
 
index fe5f936988bc5ec9bbe6d9175ef6e085c422eadc..6898377910f9fce8ccc73fba7b8140dff53d7ec6 100755 (executable)
@@ -62,4 +62,9 @@ test_expect_success 'rebase -n overrides config rebase.stat config' '
         ! grep "^ fileX |  *1 +$" diffstat.txt
 '
 
+test_expect_success 'rebase --onto outputs the invalid ref' '
+       test_must_fail git rebase --onto invalid-ref HEAD HEAD 2>err &&
+       grep "invalid-ref" err
+'
+
 test_done