diff --git a/src/backend/BSHTTP.pm b/src/backend/BSHTTP.pm index 891f67eff8f..71f883397ff 100644 --- a/src/backend/BSHTTP.pm +++ b/src/backend/BSHTTP.pm @@ -296,12 +296,11 @@ sub read_data { $cl = $maxl = length($qu); } } - $cl -= $maxl if defined($cl); - $ret = substr($qu, 0, $maxl); + $cl -= $maxl if defined $cl; $req->{'__cl'} = $cl; - $req->{'__data'} = substr($qu, $maxl); + $req->{'__data'} = substr($qu, $maxl, length($qu) - $maxl, ''); $req->{'__eof'} = 1 if defined($cl) && $cl == 0; - return $ret; + return $qu; } } diff --git a/src/backend/BSServer.pm b/src/backend/BSServer.pm index 5491be258b3..060685392b3 100644 --- a/src/backend/BSServer.pm +++ b/src/backend/BSServer.pm @@ -448,6 +448,7 @@ sub server { last unless $pid > 0; my $slot = delete $chld{$pid}; $slot = delete $chld2{$pid} unless defined $slot; + printf("Child %d died from signal %d\n", $pid, $? & 127) if $? & 127; if (defined($slot)) { if ($serverstatus_ok && defined(sysseek(STA, $slot * 256, Fcntl::SEEK_SET))) { syswrite(STA, "\0" x 256, 256);