aboutsummaryrefslogtreecommitdiff
path: root/shell/hush_test
diff options
context:
space:
mode:
authorDenys Vlasenko <dvlasenk@redhat.com>2010-09-12 15:38:04 +0200
committerDenys Vlasenko <dvlasenk@redhat.com>2010-09-12 15:38:04 +0200
commita110c90de2f56bf38de30972813f012d44042cb9 (patch)
treee10506003010cd97df9db623912abb74c409d54c /shell/hush_test
parent2d8187c139985e73349e3cb092ab4ea68a3be034 (diff)
downloadbusybox-w32-a110c90de2f56bf38de30972813f012d44042cb9.tar.gz
busybox-w32-a110c90de2f56bf38de30972813f012d44042cb9.tar.bz2
busybox-w32-a110c90de2f56bf38de30972813f012d44042cb9.zip
hush: fix EXIT trap display inside exit trap handler
function old new delta hush_exit 84 78 -6 Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
Diffstat (limited to 'shell/hush_test')
-rw-r--r--shell/hush_test/hush-trap/exit.right10
-rwxr-xr-xshell/hush_test/hush-trap/exit.tests31
2 files changed, 41 insertions, 0 deletions
diff --git a/shell/hush_test/hush-trap/exit.right b/shell/hush_test/hush-trap/exit.right
index b4932fb7f..3d0072564 100644
--- a/shell/hush_test/hush-trap/exit.right
+++ b/shell/hush_test/hush-trap/exit.right
@@ -1,2 +1,12 @@
1cow 1cow
2moo 2moo
3Traps1:
4trap -- 'exitfunc' EXIT
5Traps2:
6trap -- 'echo Should not run' EXIT
7Check1: 42
8Traps1:
9trap -- 'exitfunc' EXIT
10Traps2:
11trap -- 'echo Should not run' EXIT
12Check2: 42
diff --git a/shell/hush_test/hush-trap/exit.tests b/shell/hush_test/hush-trap/exit.tests
index 092543c25..2061105dd 100755
--- a/shell/hush_test/hush-trap/exit.tests
+++ b/shell/hush_test/hush-trap/exit.tests
@@ -1,3 +1,34 @@
1"$THIS_SH" -c 'trap "echo cow" 0' 1"$THIS_SH" -c 'trap "echo cow" 0'
2"$THIS_SH" -c 'trap "echo moo" EXIT' 2"$THIS_SH" -c 'trap "echo moo" EXIT'
3"$THIS_SH" -c 'trap "echo no" 0; trap 0' 3"$THIS_SH" -c 'trap "echo no" 0; trap 0'
4
5(
6exitfunc() {
7 echo "Traps1:"
8 trap
9 # EXIT trap is disabled after it is triggered,
10 # it can not be "re-armed" like this:
11 trap "echo Should not run" EXIT
12 echo "Traps2:"
13 trap
14}
15trap 'exitfunc' EXIT
16exit 42
17)
18echo Check1: $?
19
20(
21exitfunc() {
22 echo "Traps1:"
23 trap
24 # EXIT trap is disabled after it is triggered,
25 # it can not be "re-armed" like this:
26 trap "echo Should not run" EXIT
27 echo "Traps2:"
28 trap
29 exit 42
30}
31trap 'exitfunc' EXIT
32exit 66
33)
34echo Check2: $?