Displaying 1 result from an estimated 1 matches for "s_hard_ign".
2020 Mar 28
0
[klibc:update-dash] dash: eval: Add vfork support
...nal(int signo)
default:
act.sa_handler = SIG_DFL;
}
- *t = action;
+ if (!lvforked)
+ *t = action;
act.sa_flags = 0;
sigfillset(&act.sa_mask);
sigaction(signo, &act, 0);
@@ -271,7 +275,8 @@ ignoresig(int signo)
if (sigmode[signo - 1] != S_IGN && sigmode[signo - 1] != S_HARD_IGN) {
signal(signo, SIG_IGN);
}
- sigmode[signo - 1] = S_HARD_IGN;
+ if (!vforked)
+ sigmode[signo - 1] = S_HARD_IGN;
}
@@ -283,6 +288,9 @@ ignoresig(int signo)
void
onsig(int signo)
{
+ if (vforked)
+ return;
+
if (signo == SIGCHLD) {
gotsigchld = 1;
if (!trap[SIGCHLD])
@@ -455...