提交 f4a6e6e3 authored 作者: William King's avatar William King

Remove the FreeSWITCH core handler for SIG_CHLD.

This does not appear to be needed any longer, and while this is in
place a dependent library that tries to start a child process will
hang waiting on the SIG_CHLD signal that the FreeSWITCH core 'ate'.

FS-7250 #resolve
上级 302a339f
......@@ -90,24 +90,6 @@ static void handle_SIGILL(int sig)
return;
}
#ifndef WIN32
static void handle_SIGCHLD(int sig)
{
int status = 0;
int pid = 0;
if (sig) {};
pid = wait(&status);
if (pid > 0) {
system_ready = -1;
}
return;
}
#endif
/* kill a freeswitch process running in background mode */
static int freeswitch_kill_background()
{
......@@ -1088,8 +1070,6 @@ int main(int argc, char *argv[])
fprintf(stderr, "System Error!\n");
exit(-1);
}
signal(SIGCHLD, handle_SIGCHLD);
}
#endif
......
......@@ -1813,16 +1813,6 @@ SWITCH_DECLARE(switch_status_t) switch_core_init(switch_core_flag_t flags, switc
}
#ifndef WIN32
static void handle_SIGCHLD(int sig)
{
int status = 0;
wait(&status);
return;
}
#endif
#ifdef TRAP_BUS
static void handle_SIGBUS(int sig)
{
......@@ -2311,13 +2301,6 @@ SWITCH_DECLARE(void) switch_core_set_signal_handlers(void)
{
/* set signal handlers */
signal(SIGINT, SIG_IGN);
#ifndef WIN32
if (switch_test_flag((&runtime), SCF_THREADED_SYSTEM_EXEC)) {
signal(SIGCHLD, SIG_DFL);
} else {
signal(SIGCHLD, handle_SIGCHLD);
}
#endif
#ifdef SIGPIPE
signal(SIGPIPE, SIG_IGN);
#endif
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论