From b019c085bd98f0965d370a3628683f0f4db05c7d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Love=20H=C3=B6rnquist=20=C3=85strand?= Date: Sun, 22 May 2011 14:26:59 -0700 Subject: [PATCH] handle leaks excluded --- tests/kdc/leaks-kill.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tests/kdc/leaks-kill.sh b/tests/kdc/leaks-kill.sh index 0308ddc34..e67d274f5 100644 --- a/tests/kdc/leaks-kill.sh +++ b/tests/kdc/leaks-kill.sh @@ -10,7 +10,13 @@ if [ "$(uname -s)" = "Darwin" ] ; then leaks -exclude __CFInitialize $pid > leaks-log 2>&1 || \ { echo "leaks failed: $?"; cat leaks-log; exit 1; } - grep "Process $pid: 0 leaks for 0 total leaked bytes" leaks-log > /dev/null || \ + env pid=${pid} \ + perl -e 'my $excluded = 0; my $num = -1; while (<>) { +if (/Process $ENV{pid}: (\d+) leaks for \d+ total leaked bytes/) { $num = $1;} +if (/(\d+) leaks excluded/) { $excluded = $1;} +} +exit 1 if ($num != 0 && $num != $excluded); +exit 0;' leaks-log || \ { echo "Memory leak in $name" ; echo ""; cat leaks-log; ec=1; } # [ "$ec" != "0" ] && { env PS1=": leaks-debugger !!!! ; " bash ; }