From: Rich Felker Date: Sat, 28 May 2011 22:39:43 +0000 (-0400) Subject: posix_spawn: honor POSIX_SPAWN_SETSIGDEF flag X-Git-Tag: v0.7.11~83 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=d6c0c9784615ddb316ace52f3a9e2f025214ba2a;p=oweals%2Fmusl.git posix_spawn: honor POSIX_SPAWN_SETSIGDEF flag --- diff --git a/src/process/posix_spawn.c b/src/process/posix_spawn.c index e718cee3..7018c37e 100644 --- a/src/process/posix_spawn.c +++ b/src/process/posix_spawn.c @@ -31,7 +31,9 @@ int __posix_spawnx(pid_t *res, const char *path, for (i=1; i<=64; i++) { struct sigaction sa; sigaction(i, 0, &sa); - if (sa.sa_handler!=SIG_IGN || sigismember(&attr->__def, i)) { + if (sa.sa_handler!=SIG_IGN || + ((attr->__flags & POSIX_SPAWN_SETSIGDEF) + && sigismember(&attr->__def, i) )) { sa.sa_handler = SIG_DFL; sigaction(i, &sa, 0); }