hush: plug a memory leak

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2010-01-12 06:47:39 +01:00
parent 65d722bb0d
commit 385cc59117
3 changed files with 32 additions and 0 deletions

View File

@ -4136,6 +4136,7 @@ static NOINLINE int run_pipe(struct pipe *pi)
/* if someone gives us an empty string: `cmd with empty output` */ /* if someone gives us an empty string: `cmd with empty output` */
if (!argv_expanded[0]) { if (!argv_expanded[0]) {
free(argv_expanded);
debug_leave(); debug_leave();
return G.last_exitcode; return G.last_exitcode;
} }

View File

@ -0,0 +1,3 @@
Warm up
Measuring memory leak...
Ok

View File

@ -0,0 +1,28 @@
echo "Warm up"
i=1
while test $i != 9; do
`true`
: $((i++))
done
memleak
echo "Measuring memory leak..."
i=1
while test $i != 199; do
`true`
: $((i++))
done
i=1
while test $i != 199; do
`true`
: $((i++))
done
memleak
kb=$?
if test $kb -le 4; then
echo Ok #$kb
else
echo "Bad: $kb kb (or more) leaked"
fi