aboutsummaryrefslogtreecommitdiff
path: root/t/valgrind
diff options
context:
space:
mode:
authorJohannes Schindelin <johannes.schindelin@gmx.de>2009-02-05 22:03:00 +0100
committerJunio C Hamano <gitster@pobox.com>2009-02-05 17:48:22 -0800
commit5caa81d1b4f1b0b9ed73605ab1e4d91ba31a56b4 (patch)
treec91e90aa6803843a9bfb9d276f56e8e5d8cf59a4 /t/valgrind
parenta6d63b749369f3ba9c6d2f382efd27838604b7db (diff)
downloadgit-5caa81d1b4f1b0b9ed73605ab1e4d91ba31a56b4.tar.gz
git-5caa81d1b4f1b0b9ed73605ab1e4d91ba31a56b4.tar.xz
valgrind: do not require valgrind 3.4.0 or newer
Valgrind 3.4.0 is pretty new, and even if --track-origins is a nice feature, it is not the end of the world if that is not available. So play nice and use that option only when only an older version of valgrind is available. In the same spirit, refrain from the use of '...' in suppression files, which is also a feature only valgrind 3.4 and newer understand. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/valgrind')
-rw-r--r--t/valgrind/default.supp4
-rwxr-xr-xt/valgrind/valgrind.sh11
2 files changed, 13 insertions, 2 deletions
diff --git a/t/valgrind/default.supp b/t/valgrind/default.supp
index 5f341b859..9e013fa3b 100644
--- a/t/valgrind/default.supp
+++ b/t/valgrind/default.supp
@@ -38,6 +38,8 @@
writing-data-from-zlib-triggers-even-more-errors
Memcheck:Param
write(buf)
- ...
+ obj:/lib/ld-*.so
+ fun:write_in_full
+ fun:write_buffer
fun:write_loose_object
}
diff --git a/t/valgrind/valgrind.sh b/t/valgrind/valgrind.sh
index dc9261265..582b4dca9 100755
--- a/t/valgrind/valgrind.sh
+++ b/t/valgrind/valgrind.sh
@@ -2,11 +2,20 @@
base=$(basename "$0")
+TRACK_ORIGINS=
+
+VALGRIND_VERSION=$(valgrind --version)
+VALGRIND_MAJOR=$(expr "$VALGRIND_VERSION" : '[^0-9]*\([0-9]*\)')
+VALGRIND_MINOR=$(expr "$VALGRIND_VERSION" : '[^0-9]*[0-9]*\.\([0-9]*\)')
+test 3 -gt "$VALGRIND_MAJOR" ||
+test 3 -eq "$VALGRIND_MAJOR" -a 4 -gt "$VALGRIND_MINOR" ||
+TRACK_ORIGINS=--track-origins=yes
+
exec valgrind -q --error-exitcode=126 \
--leak-check=no \
--suppressions="$GIT_VALGRIND/default.supp" \
--gen-suppressions=all \
- --track-origins=yes \
+ $TRACK_ORIGINS \
--log-fd=4 \
--input-fd=4 \
$GIT_VALGRIND_OPTIONS \