cvs: php-src /ext/soap soap.c
| From: | Dmitry Stogov | Date: | Thu, 01 Nov 2007 13:27:58 +0000 |
| Subject: | cvs: php-src /ext/soap soap.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-46869@lists.php.net to get a copy of this message | ||
dmitry Thu Nov 1 13:27:58 2007 UTC
Modified files:
/php-src/ext/soap soap.c
Log:
Fixed bug #41635 (SoapServer and zlib.output_compression with FastCGI result in major slowdown)
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/soap.c?r1=1.234&r2=1.235&diff_format=u
Index: php-src/ext/soap/soap.c
diff -u php-src/ext/soap/soap.c:1.234 php-src/ext/soap/soap.c:1.235
--- php-src/ext/soap/soap.c:1.234 Thu Nov 1 12:26:38 2007
+++ php-src/ext/soap/soap.c Thu Nov 1 13:27:57 2007
@@ -17,7 +17,7 @@
| Dmitry Stogov <dmitry@zend.com> |
+----------------------------------------------------------------------+
*/
-/* $Id: soap.c,v 1.234 2007/11/01 12:26:38 dmitry Exp $ */
+/* $Id: soap.c,v 1.235 2007/11/01 13:27:57 dmitry Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -2388,8 +2388,12 @@
our fault code with their own handling... Figure this out later
*/
sapi_add_header("HTTP/1.1 500 Internal Service Error", sizeof("HTTP/1.1 500
Internal Service Error")-1, 1);
- snprintf(cont_len, sizeof(cont_len), "Content-Length: %d", size);
- sapi_add_header(cont_len, strlen(cont_len), 1);
+ if (zend_ini_long("zlib.output_compression",
sizeof("zlib.output_compression"), 0)) {
+ sapi_add_header("Connection: close", sizeof("Connection: close")-1, 1);
+ } else {
+ snprintf(cont_len, sizeof(cont_len), "Content-Length: %d", size);
+ sapi_add_header(cont_len, strlen(cont_len), 1);
+ }
if (soap_version == SOAP_1_2) {
sapi_add_header("Content-Type: application/soap+xml; charset=utf-8",
sizeof("Content-Type: application/soap+xml; charset=utf-8")-1, 1);
} else {