diff options
Diffstat (limited to 'tools/valgrind/valgrind_webkit_tests.sh')
-rw-r--r-- | tools/valgrind/valgrind_webkit_tests.sh | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/tools/valgrind/valgrind_webkit_tests.sh b/tools/valgrind/valgrind_webkit_tests.sh index e3e84a0..eadb72d 100644 --- a/tools/valgrind/valgrind_webkit_tests.sh +++ b/tools/valgrind/valgrind_webkit_tests.sh @@ -14,9 +14,31 @@ # tools/valgrind/memcheck/suppressions.txt # to disable any for bugs you're trying to reproduce. +# Copied from valgrind.sh +if test x"$CHROME_VALGRIND_BIN" = x +then + # Figure out which valgrind is installed. Use most recent one. + # See build-valgrind-for-chromium.sh and its history for these constants. + for SVNREV in 10880-redzone 10880 10771 20090715 + do + CHROME_VALGRIND_BIN=/usr/local/valgrind-$SVNREV/bin + test -x $CHROME_VALGRIND_BIN/valgrind && break + done +fi + +if ! test -x $CHROME_VALGRIND_BIN/valgrind +then + echo "Could not find chromium's version of valgrind." + echo "Please run build-valgrind-for-chromium.sh or set CHROME_VALGRIND_BIN." + echo "Defaulting to system valgrind." +else + echo "Using ${CHROME_VALGRIND_BIN}/valgrind." + PATH="${CHROME_VALGRIND_BIN}:$PATH" +fi + cat > vlayout-wrapper.sh <<"_EOF_" #!/bin/sh -valgrind --suppressions=tools/valgrind/memcheck/suppressions.txt --tool=memcheck --smc-check=all --num-callers=30 --trace-children=yes --leak-check=full --log-file=vlayout-%p.log --gen-suppressions=all --track-origins=yes "$@" +valgrind --suppressions=tools/valgrind/memcheck/suppressions.txt --tool=memcheck --smc-check=all --num-callers=30 --trace-children=yes --leak-check=full --show-possible=no --log-file=vlayout-%p.log --gen-suppressions=all --track-origins=yes "$@" _EOF_ chmod +x vlayout-wrapper.sh @@ -30,7 +52,7 @@ sh webkit/tools/layout_tests/run_webkit_tests.sh --run-singly -v --noshow-result nfiles=`ls vlayout-*.log | wc -l` while true do - ndone=`grep -l "LEAK SUMMARY" vlayout-*.log | wc -l` + ndone=`egrep -l "LEAK SUMMARY|no leaks are possible" vlayout-*.log | wc -l` if test $nfiles = $ndone then break |