mirror of
https://git.savannah.gnu.org/git/make.git
synced 2025-02-07 06:47:52 +00:00
Sat Jun 22 14:56:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* job.c (reap_children): Don't call die if handling_fatal_signal. * job.c (start_job_command): Call block_sigs. (block_sigs): New function, broken out of start_job_command. (reap_children): Block fatal signals around removing dead child from chain and adjusting job_slots_used. * job.h: Declare block_sigs. * job.c (reap_children): Quiescent value of shell_function_pid is zero, not -1.
This commit is contained in:
parent
610526fee7
commit
bdc49369eb
1 changed files with 18 additions and 14 deletions
10
job.c
10
job.c
|
@ -601,7 +601,9 @@ reap_children (block, err)
|
|||
|
||||
/* If the job failed, and the -k flag was not given, die,
|
||||
unless we are already in the process of dying. */
|
||||
if (!err && child_failed && !keep_going_flag)
|
||||
if (!err && child_failed && !keep_going_flag &&
|
||||
/* fatal_error_signal will die with the right signal. */
|
||||
!handling_fatal_signal)
|
||||
die (2);
|
||||
}
|
||||
|
||||
|
@ -636,6 +638,10 @@ free_child (child)
|
|||
free ((char *) child);
|
||||
}
|
||||
|
||||
#ifdef POSIX
|
||||
extern sigset_t fatal_signal_set;
|
||||
#endif
|
||||
|
||||
void
|
||||
block_sigs ()
|
||||
{
|
||||
|
@ -656,8 +662,6 @@ unblock_sigs ()
|
|||
return;
|
||||
}
|
||||
#else
|
||||
extern sigset_t fatal_signal_set;
|
||||
|
||||
void
|
||||
unblock_sigs ()
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue