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-4ccddc8fb37b7f585c2d62f6e61ad17295399aff.tar.gz |
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 @@ +Trapped +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 @@ +# "exit" in trap should not use last command's exitcode, +# but exitcode on entering the trap. +(trap "echo Trapped; exit" EXIT + (exit 1) +) +echo One:$? |