summaryrefslogtreecommitdiff
path: root/Src/signals.c
diff options
context:
space:
mode:
Diffstat (limited to 'Src/signals.c')
-rw-r--r--Src/signals.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/Src/signals.c b/Src/signals.c
index 9b9ef97aa..264b68a53 100644
--- a/Src/signals.c
+++ b/Src/signals.c
@@ -853,7 +853,7 @@ endtrapscope(void)
if (sigtrapped[sig])
unsettrap(sig);
sigtrapped[sig] = st->flags;
- if (st->flags) {
+ if (st->flags && (st->list != NULL)) {
Eprog prog = (st->flags & ZSIG_FUNC) ?
((Shfunc) st->list)->funcdef : (Eprog) st->list;
/* prevent settrap from saving this */