Browse Source

SDL_systhread.c: Remove SIGCHLD from blocked signal mask.

When SIGCHLD is blocked, some executables (for example CMake) do not exit properly when executed using `SDL_CreateProcess` from any SDL thread (not main thread). `SDL_CreateProcessWithProperties` docs say that `SIGCHILD` should not be ignored or handled, therefore blocking it during thread creation is a likely reason for the bug. Should fix #15210.

Signed-off-by: Konstantin Tomashevich <konstantin.tomashevich@gmail.com>
(cherry picked from commit 291d1b6491992cdad2bb94c9b8ef9b4b9395d325)
Konstantin Tomashevich 1 day ago
parent
commit
7b7322b222
1 changed files with 1 additions and 1 deletions
  1. 1 1
      src/thread/pthread/SDL_systhread.c

+ 1 - 1
src/thread/pthread/SDL_systhread.c

@@ -60,7 +60,7 @@
 #ifdef HAVE_SIGNAL_H
 // List of signals to mask in the subthreads
 static const int sig_list[] = {
-    SIGHUP, SIGINT, SIGQUIT, SIGPIPE, SIGALRM, SIGTERM, SIGCHLD, SIGWINCH,
+    SIGHUP, SIGINT, SIGQUIT, SIGPIPE, SIGALRM, SIGTERM, SIGWINCH,
     SIGVTALRM, SIGPROF, 0
 };
 #endif