@@ -508,12 +508,14 @@ @selector(applicationDidReceive##sig)]) { \ _##sig##Handler = (void (*)(id, SEL))[(id)delegate \ methodForSelector: \ @selector(applicationDidReceive##sig)]; \ signal(sig, handle##sig); \ - } else \ - signal(sig, (void (*)(int))SIG_DFL); + } else { \ + _##sig##Handler = NULL; \ + signal(sig, (void (*)(int))SIG_DFL); \ + } _delegate = delegate; REGISTER_SIGNAL(SIGINT) #ifdef SIGHUP