Skip to content

Conversation

@tinysun212
Copy link

Cygwin doesn't have SIGUNUSED.

@ddunbar
Copy link
Contributor

ddunbar commented Sep 19, 2016

The SIGUNUSED comment doesn't seem relevant, since this was presumably trying to reset all signals and I guess that fails there too?

Does Cygwin really allow all signals to be set except SIGSTOP & SIGKILL?

@tinysun212
Copy link
Author

Cygwin header doesn't define the SIGUNUSED, so the sigaddset() loop for Linux couldn't be used.

When I tried to reset all signals as like the case for #else, the posix_spawn() didn't work.
After adding sigdelset() for the signals SIGSTOP & SIGKILL, llbuild worked well.

@ddunbar
Copy link
Contributor

ddunbar commented Sep 19, 2016

Ok, then lets just add that code to the main code path (used on Darwin)... they can't be masked, so there is no reason for trying even on OSes that allow it. This way we at least only have two paths.

Cygwin doesn't have SIGUNUSED.
@tinysun212
Copy link
Author

Moved the code to the main path.

@ddunbar
Copy link
Contributor

ddunbar commented Sep 20, 2016

Thanks!

@swift-ci please test

@ddunbar
Copy link
Contributor

ddunbar commented Sep 20, 2016

@swift-ci please test

@ddunbar ddunbar merged commit c324ee3 into swiftlang:master Sep 20, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants