diff --git a/ChangeLog b/ChangeLog index f264e0c5a..9ac384183 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2000-06-14 Peter Stephenson + + * 11895: Src/signals.c: exit traps weren't cleared from the + list properly, resulting in memory management problems. + 2000-06-14 Sven Wischnowsky * 11885: Src/parse.c: nix kaboom with `time time' 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) {