Browse Source

test-lib.sh: do not "echo" caller-supplied strings

In some places we "echo" a string that is supplied by the calling
test script and may contain backslash sequences. The echo command
of some shells, most notably "dash", interprets these backslash
sequences (POSIX.1 allows this) which may scramble the test
output.

Signed-off-by: Uwe Storbeck <uwe@ibr.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Uwe Storbeck 11 years ago committed by Junio C Hamano
parent
commit
cb1aefda53
  1. 4
      t/test-lib.sh

4
t/test-lib.sh

@ -277,7 +277,7 @@ error "Test script did not set test_description." @@ -277,7 +277,7 @@ error "Test script did not set test_description."

if test "$help" = "t"
then
echo "$test_description"
printf '%s\n' "$test_description"
exit 0
fi

@ -328,7 +328,7 @@ test_failure_ () { @@ -328,7 +328,7 @@ test_failure_ () {
test_failure=$(($test_failure + 1))
say_color error "not ok $test_count - $1"
shift
echo "$@" | sed -e 's/^/# /'
printf '%s\n' "$*" | sed -e 's/^/# /'
test "$immediate" = "" || { GIT_EXIT_OK=t; exit 1; }
}


Loading…
Cancel
Save