1#!/bin/sh 2 3name=$1 4pid=$2 5 6ec=0 7 8if [ "$(uname -s)" = "Darwin" ] ; then 9 echo "leaks check on $name ($pid)" 10 leaks $pid > leaks-log 2>&1 || \ 11 { echo "leaks failed: $?"; cat leaks-log; exit 1; } 12 13 grep "Process $pid: 0 leaks for 0 total leaked bytes" leaks-log > /dev/null || \ 14 { echo "Memory leak in $name" ; echo ""; cat leaks-log; ec=1; } 15 16 # [ "$ec" != "0" ] && { env PS1=": leaks-debugger !!!! ; " bash ; } 17 18fi 19 20kill $pid 21sleep 3 22kill -9 $pid 2> /dev/null 23 24rm -f leaks-log 25 26exit $ec 27