about summary refs log tree commit diff
path: root/Src/signals.c
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2000-06-14 14:19:20 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2000-06-14 14:19:20 +0000
commitae8c986107bc092abb35fecd639e4323f8d69ec7 (patch)
tree62f0a6bb2837c2b0669af5a94b4904512190f01f /Src/signals.c
parenta908cdd155ed5e400e148a75a02bd57a050f7b82 (diff)
downloadzsh-ae8c986107bc092abb35fecd639e4323f8d69ec7.tar.gz
zsh-ae8c986107bc092abb35fecd639e4323f8d69ec7.tar.xz
zsh-ae8c986107bc092abb35fecd639e4323f8d69ec7.zip
11895: trap exit problem when exiting from function scope
Diffstat (limited to 'Src/signals.c')
-rw-r--r--Src/signals.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/Src/signals.c b/Src/signals.c
index 264b68a53..543d4ab9b 100644
--- a/Src/signals.c
+++ b/Src/signals.c
@@ -837,9 +837,9 @@ endtrapscope(void)
 	    exitfn = removehashnode(shfunctab, "TRAPEXIT");
 	} else {
 	    exitfn = sigfuncs[SIGEXIT];
-	    sigfuncs[SIGEXIT] = NULL;
 	}
-	unsettrap(SIGEXIT);
+	sigfuncs[SIGEXIT] = NULL;
+	sigtrapped[SIGEXIT] = 0;
     }
 
     if (savetraps) {