You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-06 12:20:30 +00:00
Remove SIGCHILD handle in OS_Unix, interferes with pclose()
This commit is contained in:
@@ -119,15 +119,6 @@ int OS_Unix::unix_initialize_audio(int p_audio_driver) {
|
|||||||
return 0;
|
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() {
|
void OS_Unix::initialize_core() {
|
||||||
|
|
||||||
#ifdef NO_THREADS
|
#ifdef NO_THREADS
|
||||||
@@ -155,14 +146,6 @@ void OS_Unix::initialize_core() {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
_setup_clock();
|
_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() {
|
void OS_Unix::finalize_core() {
|
||||||
|
|||||||
Reference in New Issue
Block a user