1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

small cleanup

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
kosaki 2011-07-12 05:12:29 +00:00
parent c307523565
commit 7fd8266516

View file

@ -1021,31 +1021,15 @@ static void
init_sigchld(int sig)
{
sighandler_t oldfunc;
#if USE_TRAP_MASK
sigset_t mask;
sigset_t fullmask;
/*
* disable interrupt. Otherwise following temmporal signal handler change
* has a race.
* Note: now we have only single thread, therefore both sigprocmask() and
* pthread_sigmask() makes the same effect.
*/
sigfillset(&fullmask);
pthread_sigmask(SIG_BLOCK, &fullmask, &mask);
#endif
rb_disable_interrupt();
oldfunc = ruby_signal(sig, SIG_DFL);
if (oldfunc != SIG_DFL && oldfunc != SIG_IGN) {
ruby_signal(sig, oldfunc);
} else {
GET_VM()->trap_list[sig].cmd = 0;
}
#if USE_TRAP_MASK
sigdelset(&mask, sig);
pthread_sigmask(SIG_SETMASK, &mask, NULL);
#endif
rb_enable_interrupt();
}
#endif