From 8882289d48f454723b6c7508e882a69a089f8eaf Mon Sep 17 00:00:00 2001 From: Han Sangjin Date: Sat, 17 Sep 2016 08:32:20 +0900 Subject: [PATCH] Fixed for Cygwin Cygwin doesn't have SIGUNUSED. --- lib/BuildSystem/LaneBasedExecutionQueue.cpp | 10 ++++++---- lib/Commands/NinjaBuildCommand.cpp | 8 +++++--- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/lib/BuildSystem/LaneBasedExecutionQueue.cpp b/lib/BuildSystem/LaneBasedExecutionQueue.cpp index 7f0e83ad..69bea512 100644 --- a/lib/BuildSystem/LaneBasedExecutionQueue.cpp +++ b/lib/BuildSystem/LaneBasedExecutionQueue.cpp @@ -159,10 +159,12 @@ class LaneBasedExecutionQueue : public BuildExecutionQueue { } posix_spawnattr_setsigdefault(&attributes, &mostSignals); #else - sigset_t allSignals; - sigfillset(&allSignals); - posix_spawnattr_setsigdefault(&attributes, &allSignals); -#endif + sigset_t mostSignals; + sigfillset(&mostSignals); + sigdelset(&mostSignals, SIGKILL); + sigdelset(&mostSignals, SIGSTOP); + posix_spawnattr_setsigdefault(&attributes, &mostSignals); +#endif // Establish a separate process group. posix_spawnattr_setpgroup(&attributes, 0); diff --git a/lib/Commands/NinjaBuildCommand.cpp b/lib/Commands/NinjaBuildCommand.cpp index 5b8ac09a..a00d7d8a 100644 --- a/lib/Commands/NinjaBuildCommand.cpp +++ b/lib/Commands/NinjaBuildCommand.cpp @@ -1169,9 +1169,11 @@ buildCommand(BuildContext& context, ninja::Command* command) { } posix_spawnattr_setsigdefault(&attributes, &mostSignals); #else - sigset_t allSignals; - sigfillset(&allSignals); - posix_spawnattr_setsigdefault(&attributes, &allSignals); + sigset_t mostSignals; + sigfillset(&mostSignals); + sigdelset(&mostSignals, SIGKILL); + sigdelset(&mostSignals, SIGSTOP); + posix_spawnattr_setsigdefault(&attributes, &mostSignals); #endif // Establish a separate process group.