[PATCH] posix_spawn: skip SIGKILL & SIGSTOP
Yuyi Wang <[email protected]>
| Newsgroups | gmane.comp.lib.newlib |
|---|---|
| Message-ID | <TYCPR01MB10926CFBFEF32CA355593C1B4F8D62@TYCPR01MB10926.jpnprd01.prod.outlook.com> |
sigaction() returns EINVAL on SIGKILL & SIGSTOP. We need to skip them.
---
newlib/libc/posix/posix_spawn.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/newlib/libc/posix/posix_spawn.c b/newlib/libc/posix/posix_spawn.c
index 6fd6159d0..46e4e5369 100644
--- a/newlib/libc/posix/posix_spawn.c
+++ b/newlib/libc/posix/posix_spawn.c
@@ -199,6 +199,8 @@ process_spawnattr(const posix_spawnattr_t sa)
if (sa->sa_flags & POSIX_SPAWN_SETSIGDEF) {
for (i = 1; i < NSIG; i++) {
+ if (i == SIGKILL || i == SIGSTOP)
+ continue;
if (sigismember(&sa->sa_sigdefault, i))
if (sigaction(i, &sigact, NULL) != 0)
return (errno);
--
2.48.1.windows.1-2