summaryrefslogtreecommitdiff
path: root/shell/hush_test
diff options
context:
space:
mode:
authorDenis Vlasenko2007-11-23 12:50:54 +0000
committerDenis Vlasenko2007-11-23 12:50:54 +0000
commitf962a0354e2426ef9781df97e4b02b32e438783c (patch)
tree4e0b3363932fbc0a30d5242b58ca5a0fea48d2a8 /shell/hush_test
parentf23c3f95e88302923147f159115180da7cf0344e (diff)
downloadbusybox-f962a0354e2426ef9781df97e4b02b32e438783c.zip
busybox-f962a0354e2426ef9781df97e4b02b32e438783c.tar.gz
hush: plug memory leak
Diffstat (limited to 'shell/hush_test')
-rwxr-xr-xshell/hush_test/hush-z_slow/leak_var.tests56
-rwxr-xr-xshell/hush_test/run-all1
2 files changed, 40 insertions, 17 deletions
diff --git a/shell/hush_test/hush-z_slow/leak_var.tests b/shell/hush_test/hush-z_slow/leak_var.tests
index d3ca259..388d6a7 100755
--- a/shell/hush_test/hush-z_slow/leak_var.tests
+++ b/shell/hush_test/hush-z_slow/leak_var.tests
@@ -1,24 +1,46 @@
pid=$$
# Warm up
-unset t
-t=111111111111111111111111111111111111111111111111111111111111111111111111
-export t
-unset t
-t=111111111111111111111111111111111111111111111111111111111111111111111111
-export t
-unset t
-t=111111111111111111111111111111111111111111111111111111111111111111111111
-export t
-unset t
-t=111111111111111111111111111111111111111111111111111111111111111111111111
-export t
-unset t
-t=111111111111111111111111111111111111111111111111111111111111111111111111
-export t
-i=1
-if test $i = 1111111111111111111111111111111111111111111111; then i=2; fi
beg=`ps -o pid,vsz | grep "^ *$pid "`
+i=1
+while test $i != X; do
+ unset t
+ t=111111111111111111111111111111111111111111111111111111111111111111111111
+ export t
+ unset t
+ t=111111111111111111111111111111111111111111111111111111111111111111111111
+ export t
+ unset t
+ t=111111111111111111111111111111111111111111111111111111111111111111111111
+ export t
+ unset t
+ t=111111111111111111111111111111111111111111111111111111111111111111111111
+ export t
+ unset t
+ t=111111111111111111111111111111111111111111111111111111111111111111111111
+ export t
+ i=1$i
+ if test $i = 1111111111111111111111111111111111111111111111; then i=2; fi
+ if test $i = 1111111111111111111111111111111111111111111112; then i=3; fi
+ if test $i = 1111111111111111111111111111111111111111111113; then i=4; fi
+ if test $i = 1111111111111111111111111111111111111111111114; then i=5; fi
+ if test $i = 1111111111111111111111111111111111111111111115; then i=6; fi
+ if test $i = 1111111111111111111111111111111111111111111116; then i=7; fi
+ if test $i = 1111111111111111111111111111111111111111111117; then i=8; fi
+ if test $i = 1111111111111111111111111111111111111111111118; then i=9; fi
+ if test $i = 1111111111111111111111111111111111111111111119; then i=a; fi
+ if test $i = 111111111111111111111111111111111111111111111a; then i=b; fi
+ if test $i = 111111111111111111111111111111111111111111111b; then i=c; fi
+ if test $i = 111111111111111111111111111111111111111111111c; then i=d; fi
+ if test $i = 111111111111111111111111111111111111111111111d; then i=e; fi
+ if test $i = 111111111111111111111111111111111111111111111e; then i=f; fi
+ if test $i = 111111111111111111111111111111111111111111111f; then i=g; fi
+ if test $i = 111111111111111111111111111111111111111111111g; then i=h; fi
+ if test $i = 111111111111111111111111111111111111111111111h; then i=i; fi
+ if test $i = 111111111111111111111111111111111111111111111i; then i=j; fi
+ if test $i = 111111111111111111111111111111111111111111111j; then i=X; fi
+done
+end=`ps -o pid,vsz | grep "^ *$pid "`
echo "Measuring memory leak..."
beg=`ps -o pid,vsz | grep "^ *$pid "`
diff --git a/shell/hush_test/run-all b/shell/hush_test/run-all
index ec83230..0d40ae6 100755
--- a/shell/hush_test/run-all
+++ b/shell/hush_test/run-all
@@ -31,6 +31,7 @@ do_test()
test -x "$x" || continue
name="${x%%.tests}"
test -f "$name.right" || continue
+# echo Running test: "$name.right"
{
"$THIS_SH" "./$x" >"$name.xx" 2>&1
diff -u "$name.xx" "$name.right" >"../$1-$x.fail" && rm -f "$name.xx" "../$1-$x.fail"