mirror of
https://github.com/moparisthebest/curl
synced 2024-08-13 17:03:50 -04:00
dead_child_handler also takes care of reaping pingpong server dead child processes
This commit is contained in:
parent
bdd3763980
commit
fa188eec7b
@ -110,6 +110,19 @@ sub exit_signal_handler {
|
|||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#**********************************************************************
|
||||||
|
# dead_child_handler takes care of reaping dead child processes.
|
||||||
|
#
|
||||||
|
sub dead_child_handler {
|
||||||
|
use POSIX ":sys_wait_h";
|
||||||
|
local $!; # preserve errno
|
||||||
|
local $?; # preserve exit status
|
||||||
|
while (waitpid(-1, &WNOHANG) > 0) {
|
||||||
|
select(undef, undef, undef, 0.05);
|
||||||
|
}
|
||||||
|
$SIG{CHLD} = \&dead_child_handler;
|
||||||
|
}
|
||||||
|
|
||||||
#**********************************************************************
|
#**********************************************************************
|
||||||
# getlogfilename returns a log file name depending on given arguments.
|
# getlogfilename returns a log file name depending on given arguments.
|
||||||
#
|
#
|
||||||
@ -204,6 +217,7 @@ if($proto !~ /^(ftp|imap|pop3|smtp)\z/) {
|
|||||||
|
|
||||||
$SIG{INT} = \&exit_signal_handler;
|
$SIG{INT} = \&exit_signal_handler;
|
||||||
$SIG{TERM} = \&exit_signal_handler;
|
$SIG{TERM} = \&exit_signal_handler;
|
||||||
|
$SIG{CHLD} = \&dead_child_handler;
|
||||||
|
|
||||||
sub sysread_or_die {
|
sub sysread_or_die {
|
||||||
my $FH = shift;
|
my $FH = shift;
|
||||||
|
Loading…
Reference in New Issue
Block a user