diff options
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | Test/C03traps.ztst | 12 |
2 files changed, 19 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog index 6de1d40df..de438fa08 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2001-10-01 Peter Stephenson <pws@csr.com> + + * 15917: Test/C03traps.ztst: test for EXIT trap fix in 15844. + 2001-09-30 Clint Adams <clint@zsh.org> * 15915: Completion/Debian/Command/_bts: @@ -24,7 +28,7 @@ 2001-09-27 Peter Stephenson <pws@csr.com> - * Config/version.mk, Completion/Unix/Command/.distfiles, + * unposted: Config/version.mk, Completion/Unix/Command/.distfiles, Doc/Zsh/.distfiles, Functions/Misc/.distfiles, Functions/Zle/.distfiles, Test/.distfiles: version 4.1.0-dev-2, with the usual fix for the list of distributed files. @@ -58,8 +62,8 @@ 2001-09-24 Peter Stephenson <pws@csr.com> - * Src/builtin.c, Src/exec.c: Unwind function calls before exiting - shell from exit command to allow EXIT traps to run. + * 15844: Src/builtin.c, Src/exec.c: Unwind function calls before + exiting shell from exit command to allow EXIT traps to run. 2001-09-21 Andrew Main (Zefram) <zefram@zsh.org> diff --git a/Test/C03traps.ztst b/Test/C03traps.ztst index f898a379e..81ef38a30 100644 --- a/Test/C03traps.ztst +++ b/Test/C03traps.ztst @@ -45,6 +45,18 @@ 0:Nested `trap - EXIT' on `TRAPEXIT' >EXIT1 +# We can't test an EXIT trap for the shell as a whole, because +# we're inside a function scope which we don't leave when the +# subshell exits. Not sure if that's the correct behaviour, but +# it's sort of consistent. + ( fn1() { trap 'print Function 1 going' EXIT; exit; print Not reached; } + fn2() { trap 'print Function 2 going' EXIT; fn1; print Not reached; } + fn2 + ) +0:EXIT traps on functions when exiting from function +>Function 1 going +>Function 2 going + fn1() { trap trap 'print INT1' INT |