Release 3-2-2 with tag: REL_mrw-c++-3-2-2
This commit is contained in:
49
valcheck.sh
Executable file
49
valcheck.sh
Executable file
@@ -0,0 +1,49 @@
|
||||
#! /bin/bash
|
||||
|
||||
# (c) Siemens Schweiz AG, vertraulich
|
||||
# $Id: checklatest.sh 323 2007-02-23 15:32:45Z chawama0 $
|
||||
#
|
||||
# 1 2 3 4 5 6 7 8
|
||||
# 3456789012345676890123456789012345678901234567890123456789012345678901234567890
|
||||
|
||||
printUsage() {
|
||||
echo "Usage: $0 <program-to-check>"
|
||||
echo ""
|
||||
echo "This script checks a program using valgrind."
|
||||
return 0
|
||||
}
|
||||
|
||||
if [ $# -ne 1 -o "$1" = "-h" -o "$1" = "--help" ] ; then
|
||||
printUsage
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! valgrind \
|
||||
--show-reachable=yes \
|
||||
--leak-check=full \
|
||||
--gen-suppressions=all \
|
||||
--log-file-exactly=valgrind.log \
|
||||
--suppressions=$(dirname $0)/suppressions.valgrind \
|
||||
$1; then
|
||||
echo "******** Valcheck: Testfall fehlgeschlagen! (normaler Fehler)"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! ( ( grep 'ERROR SUMMARY: 0 errors from 0 contexts' valgrind.log \
|
||||
&& \
|
||||
( grep 'definitely lost: 0 bytes in 0 blocks' valgrind.log \
|
||||
&& \
|
||||
grep 'possibly lost: 0 bytes in 0 blocks' valgrind.log \
|
||||
&& \
|
||||
grep 'still reachable: 0 bytes in 0 blocks' valgrind.log \
|
||||
||
|
||||
grep 'All heap blocks were freed -- no leaks are possible' \
|
||||
valgrind.log
|
||||
)
|
||||
) 2>&1 > /dev/null ); then
|
||||
mv valgrind.log valgrind-$(basename $1).error
|
||||
echo "******** Valcheck: Speicherfehler! Siehe valgrind-$(basename $1).error"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
rm valgrind.log
|
Reference in New Issue
Block a user