diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2020-02-14 17:27:18 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2020-02-16 19:14:45 +0100 |
commit | 4ccddc8fb37b7f585c2d62f6e61ad17295399aff (patch) | |
tree | 5a7b60334c1be7f7d32ca7d589b4171fc1eea28a /shell/ash_test | |
parent | f7eea8c235dea6699a21c7b26c218e6c0dc1bf95 (diff) | |
download | busybox-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.right | 2 | ||||
-rwxr-xr-x | shell/ash_test/ash-misc/exitcode_trap1.tests | 6 |
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 @@ | |||
1 | Trapped | ||
2 | One: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 | ) | ||
6 | echo One:$? | ||