From dcd78c4d0ff71a36d5c88953a62f5df6a4f31a9c Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Sun, 19 Apr 2009 23:07:51 +0000 Subject: hush: fix "export not_yet_defined_var", fix parsing of "cmd | }" corner case; improve hush_leaktool.sh; fix some false positives in testsuite function old new delta builtin_export 191 206 +15 parse_stream 2196 2200 +4 --- shell/hush_leaktool.sh | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'shell/hush_leaktool.sh') diff --git a/shell/hush_leaktool.sh b/shell/hush_leaktool.sh index f8e47aecd..ca35ec144 100755 --- a/shell/hush_leaktool.sh +++ b/shell/hush_leaktool.sh @@ -6,8 +6,20 @@ output=output freelist=`grep 'free 0x' "$output" | cut -d' ' -f2 | sort | uniq | xargs` grep -v free "$output" >"$output.leaked" + +i=8 +list= for freed in $freelist; do - echo Dropping $freed - grep -v $freed <"$output.leaked" >"$output.temp" + list="$list -e $freed" + test $((--i)) != 0 && continue + echo Dropping $list + grep -F -v $list <"$output.leaked" >"$output.temp" mv "$output.temp" "$output.leaked" + i=8 + list= done +if test "$list"; then + echo Dropping $list + grep -F -v $list <"$output.leaked" >"$output.temp" + mv "$output.temp" "$output.leaked" +fi -- cgit v1.2.3