sigset_t done;
struct sigaction sa;
+ clear_phase_hooks(PHASE_SHUTDOWN);
+ /* Prevents calls to fatal() etc. in the child from running off
+ and doing a lot of unhelpful things */
+
sigemptyset(&done);
for (n=sigs; n; n=n->next)
if (!sigismember(&done,n->signum)) {
spw=p[1];
spr=p[0];
setnonblock(spw);
+ setnonblock(spr);
register_for_poll(NULL,signal_beforepoll,signal_afterpoll,"signal");
signal_handling=True;