From: Dmitry Stogov Date: Fri, 16 Feb 2007 11:30:03 +0000 (+0000) Subject: Fixed bug #40286 (PHP fastcgi with PHP_FCGI_CHILDREN don't kill children when parent... X-Git-Tag: php-5.2.2RC1~384 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=780c66d14babfbdfd3bcbf4d3db301ae445e90ee;p=php Fixed bug #40286 (PHP fastcgi with PHP_FCGI_CHILDREN don't kill children when parent is killed) --- diff --git a/NEWS b/NEWS index e73da6fc4d..b8ea683eca 100644 --- a/NEWS +++ b/NEWS @@ -22,6 +22,8 @@ PHP NEWS (Dmitry) - Fixed bug #40410 (ext/posix does not compile on MacOS 10.3.9). (Tony) - Fixed Bug #40352 (FCGI_WEB_SERVER_ADDRS function get lost). (Dmitry) +- Fixed bug #40286 (PHP fastcgi with PHP_FCGI_CHILDREN don't kill children when + parent is killed). (Dmitry) - Fixed bug #40236 (php -a function allocation eats memory). (Dmitry) - Fixed bug #40109 (iptcembed fails on non-jfif jpegs). (Tony) - Fixed bug #39836 (SplObjectStorage empty after unserialize). (Marcus) diff --git a/sapi/cgi/cgi_main.c b/sapi/cgi/cgi_main.c index f8375fd3c4..6db3673847 100644 --- a/sapi/cgi/cgi_main.c +++ b/sapi/cgi/cgi_main.c @@ -355,18 +355,14 @@ static int sapi_cgi_send_headers(sapi_headers_struct *sapi_headers TSRMLS_DC) static int sapi_cgi_read_post(char *buffer, uint count_bytes TSRMLS_DC) { - uint read_bytes=0, tmp_read_bytes; -#if PHP_FASTCGI - char *pos = buffer; -#endif + int read_bytes=0, tmp_read_bytes; count_bytes = MIN(count_bytes, (uint) SG(request_info).content_length - SG(read_post_bytes)); while (read_bytes < count_bytes) { #if PHP_FASTCGI if (fcgi_is_fastcgi()) { fcgi_request *request = (fcgi_request*) SG(server_context); - tmp_read_bytes = fcgi_read(request, pos, count_bytes - read_bytes); - pos += tmp_read_bytes; + tmp_read_bytes = fcgi_read(request, buffer + read_bytes, count_bytes - read_bytes); } else { tmp_read_bytes = read(0, buffer + read_bytes, count_bytes - read_bytes); }