aboutsummaryrefslogtreecommitdiff
path: root/shell/ash_test
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2020-02-14 17:27:18 +0100
committerDenys Vlasenko <vda.linux@googlemail.com>2020-02-16 19:14:45 +0100
commit4ccddc8fb37b7f585c2d62f6e61ad17295399aff (patch)
tree5a7b60334c1be7f7d32ca7d589b4171fc1eea28a /shell/ash_test
parentf7eea8c235dea6699a21c7b26c218e6c0dc1bf95 (diff)
downloadbusybox-w32-4ccddc8fb37b7f585c2d62f6e61ad17295399aff.tar.gz
busybox-w32-4ccddc8fb37b7f585c2d62f6e61ad17295399aff.tar.bz2
busybox-w32-4ccddc8fb37b7f585c2d62f6e61ad17295399aff.zip
ash: [BUILTIN] Exit without arguments in a trap should use status outside traps
Upstream commit: Date: Mon Oct 6 10:39:47 2014 +0800 [BUILTIN] Exit without arguments in a trap should use status outside traps POSIX now requires that exit without arguments in a trap should return the last command status prior to executing traps. This patch implements this behaviour. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell/ash_test')
-rw-r--r--shell/ash_test/ash-misc/exitcode_trap1.right2
-rwxr-xr-xshell/ash_test/ash-misc/exitcode_trap1.tests6
2 files changed, 8 insertions, 0 deletions
diff --git a/shell/ash_test/ash-misc/exitcode_trap1.right b/shell/ash_test/ash-misc/exitcode_trap1.right
new file mode 100644
index 000000000..5f76f68da
--- /dev/null
+++ b/shell/ash_test/ash-misc/exitcode_trap1.right
@@ -0,0 +1,2 @@
1Trapped
2One:1
diff --git a/shell/ash_test/ash-misc/exitcode_trap1.tests b/shell/ash_test/ash-misc/exitcode_trap1.tests
new file mode 100755
index 000000000..c35b6b391
--- /dev/null
+++ b/shell/ash_test/ash-misc/exitcode_trap1.tests
@@ -0,0 +1,6 @@
1# "exit" in trap should not use last command's exitcode,
2# but exitcode on entering the trap.
3(trap "echo Trapped; exit" EXIT
4 (exit 1)
5)
6echo One:$?