path: root/t/perf
diff options
authorJohannes Altmanninger <>2021-12-25 08:16:58 (GMT)
committerJunio C Hamano <>2021-12-25 22:24:58 (GMT)
commit9ccab75608fb87d82ccec1ab71cc915d7f8dc5a0 (patch)
tree5cc78f1e2c969d56bba4c454623ba74b16c3ba91 /t/perf
parente9d7761bb94f20acc98824275e317fa82436c25d (diff)
t/perf: do not run tests in user's $SHELL
The environment variable $SHELL is usually set to the user's interactive shell. Our build and test scripts never use $SHELL because there are no guarantees about its input language. Instead, we use /bin/sh which should be a POSIX shell. For systems with a broken /bin/sh, we allow to override that path via SHELL_PATH. To run tests in yet another shell we allow to override SHELL_PATH with TEST_SHELL_PATH. Perf tests run in $SHELL via a wrapper defined in t/perf/, so they break with e.g. SHELL=python. Use TEST_SHELL_PATH like in other tests. TEST_SHELL_PATH is always defined because t/perf/ includes t/, which includes GIT-BUILD-OPTIONS. Acked-by: Jeff King <> Signed-off-by: Johannes Altmanninger <> Signed-off-by: Junio C Hamano <>
Diffstat (limited to 't/perf')
1 files changed, 1 insertions, 1 deletions
diff --git a/t/perf/ b/t/perf/
index 780a740..407252b 100644
--- a/t/perf/
+++ b/t/perf/
@@ -161,7 +161,7 @@ test_run_perf_ () {
export test_cleanup test_export_
- "$GTIME" -f "%E %U %S" -o test_time.$i "$SHELL" -c '
+ "$GTIME" -f "%E %U %S" -o test_time.$i "$TEST_SHELL_PATH" -c '
test_export () {
test_export_="$test_export_ $*"