123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- # "Check many leaks" test #2
- # Cramming all kinds of weird commands in here.
- # As you find leaks, please create separate, small test
- # for each leak.
- # Narrowing down the leak using this large test may be difficult.
- # It is intended to be a blanket "is everything ok?" test
- echo "Warm up"
- local_var="local val"
- export dev_null="/dev/null"
- >$dev_null
- echo hi1 $local_var `echo ho` >>/dev/null
- echo hi2 $local_var </dev/null | echo 2>&- | cat 1<>/dev/null
- { echo hi4 $local_var `echo ho` 1<>/dev/null; }
- ( echo hi4 $local_var `echo ho` 1<>/dev/null )
- if echo $local_var; false
- then echo not run
- elif false <$dev_null
- then none
- else cat 0<>$dev_null 1<>"$dev_null"
- fi >>/dev/null
- {
- if echo $local_var; then cat <<HERE
- Hi cat
- HERE
- fi >>/dev/null
- } 1<>/dev/null
- while { echo $dev_null >>$dev_null; }; do cat <"$dev_null"; break; done
- ( until { echo $dev_null >>$dev_null | false; }; do cat <"$dev_null"; break; done ) <$dev_null
- f() { echo $1; }
- f >/dev/null
- memleak
- echo "Measuring memory leak..."
- # Please copy the entire block from above verbatim
- local_var="local val"
- export dev_null="/dev/null"
- >$dev_null
- echo hi1 $local_var `echo ho` >>/dev/null
- echo hi2 $local_var </dev/null | echo 2>&- | cat 1<>/dev/null
- { echo hi4 $local_var `echo ho` 1<>/dev/null; }
- ( echo hi4 $local_var `echo ho` 1<>/dev/null )
- if echo $local_var; false
- then echo not run
- elif false <$dev_null
- then none
- else cat 0<>$dev_null 1<>"$dev_null"
- fi >>/dev/null
- {
- if echo $local_var; then cat <<HERE
- Hi cat
- HERE
- fi >>/dev/null
- } 1<>/dev/null
- while { echo $dev_null >>$dev_null; }; do cat <"$dev_null"; break; done
- ( until { echo $dev_null >>$dev_null | false; }; do cat <"$dev_null"; break; done ) <$dev_null
- f() { echo $1; }
- f >/dev/null
- # And same again
- local_var="local val"
- export dev_null="/dev/null"
- >$dev_null
- echo hi1 $local_var `echo ho` >>/dev/null
- echo hi2 $local_var </dev/null | echo 2>&- | cat 1<>/dev/null
- { echo hi4 $local_var `echo ho` 1<>/dev/null; }
- ( echo hi4 $local_var `echo ho` 1<>/dev/null )
- if echo $local_var; false
- then echo not run
- elif false <$dev_null
- then none
- else cat 0<>$dev_null 1<>"$dev_null"
- fi >>/dev/null
- {
- if echo $local_var; then cat <<HERE
- Hi cat
- HERE
- fi >>/dev/null
- } 1<>/dev/null
- while { echo $dev_null >>$dev_null; }; do cat <"$dev_null"; break; done
- ( until { echo $dev_null >>$dev_null | false; }; do cat <"$dev_null"; break; done ) <$dev_null
- f() { echo $1; }
- f >/dev/null
- memleak
- kb=$?
- if test $kb -le 4; then
- echo Ok #$kb
- else
- echo "Bad: $kb kb (or more) leaked"
- fi
|