Remove SIGCHILD handle in OS_Unix, interferes with pclose()

This commit is contained in:
Juan Linietsky 2019-04-07 15:46:52 -03:00
parent 49b6423874
commit 65f3a953de

View File

@ -119,15 +119,6 @@ int OS_Unix::unix_initialize_audio(int p_audio_driver) {
return 0;
}
// Very simple signal handler to reap processes where ::execute was called with
// !p_blocking
void handle_sigchld(int sig) {
int saved_errno = errno;
while (waitpid((pid_t)(-1), 0, WNOHANG) > 0) {
}
errno = saved_errno;
}
void OS_Unix::initialize_core() {
#ifdef NO_THREADS
@ -155,14 +146,6 @@ void OS_Unix::initialize_core() {
#endif
_setup_clock();
struct sigaction sa;
sa.sa_handler = &handle_sigchld;
sigemptyset(&sa.sa_mask);
sa.sa_flags = SA_RESTART | SA_NOCLDSTOP;
if (sigaction(SIGCHLD, &sa, 0) == -1) {
perror("ERROR sigaction() failed:");
}
}
void OS_Unix::finalize_core() {