about summary refs log tree commit diff
diff options
context:
space:
mode:
authorTanaka Akira <akr@users.sourceforge.net>1999-10-31 06:42:25 +0000
committerTanaka Akira <akr@users.sourceforge.net>1999-10-31 06:42:25 +0000
commitbeaf69f4283ba80c5b9b8251c7116e22b0a65e82 (patch)
tree50652ff411a8d726f57dc4018fe79e6f1a283a55
parent84b0a3076bb297c5965ec66ea6227c2f25ae4d92 (diff)
downloadzsh-beaf69f4283ba80c5b9b8251c7116e22b0a65e82.tar.gz
zsh-beaf69f4283ba80c5b9b8251c7116e22b0a65e82.tar.xz
zsh-beaf69f4283ba80c5b9b8251c7116e22b0a65e82.zip
zsh-workers/8473
-rw-r--r--Src/signals.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/Src/signals.c b/Src/signals.c
index 50af1b400..60457349b 100644
--- a/Src/signals.c
+++ b/Src/signals.c
@@ -668,6 +668,7 @@ dosavetrap(int sig, int level)
 	st->list = sigfuncs[sig];
 	unsettrap(sig);
     }
+    sigtrapped[sig] = 0;
     notrapfree--;
     PERMALLOC {
 	if (!savetraps)
@@ -829,6 +830,7 @@ endtrapscope(void)
 
 	    if (sigtrapped[sig])
 		unsettrap(sig);
+	    sigtrapped[sig] = st->flags;
 	    if (st->flags) {
 		List list = (st->flags & ZSIG_FUNC) ?
 		    ((Shfunc) st->list)->funcdef : (List) st->list;