summaryrefslogtreecommitdiff
path: root/shell/hush_leaktool.sh (plain)
blob: ca35ec1443cfc77ac97d7848764e8aefd268f8c2
1#!/bin/sh
2
3# hush's stderr with leak debug enabled
4output=output
5
6freelist=`grep 'free 0x' "$output" | cut -d' ' -f2 | sort | uniq | xargs`
7
8grep -v free "$output" >"$output.leaked"
9
10i=8
11list=
12for freed in $freelist; do
13 list="$list -e $freed"
14 test $((--i)) != 0 && continue
15 echo Dropping $list
16 grep -F -v $list <"$output.leaked" >"$output.temp"
17 mv "$output.temp" "$output.leaked"
18 i=8
19 list=
20done
21if test "$list"; then
22 echo Dropping $list
23 grep -F -v $list <"$output.leaked" >"$output.temp"
24 mv "$output.temp" "$output.leaked"
25fi
26