dmitry          Mon Feb  6 10:16:16 2006 UTC

  Modified files:              
    /php-src/ext/soap   php_http.c 
  Log:
  Fixed bug #36283 (SOAPClient Compression Broken).
  
  
http://cvs.php.net/viewcvs.cgi/php-src/ext/soap/php_http.c?r1=1.83&r2=1.84&diff_format=u
Index: php-src/ext/soap/php_http.c
diff -u php-src/ext/soap/php_http.c:1.83 php-src/ext/soap/php_http.c:1.84
--- php-src/ext/soap/php_http.c:1.83    Sun Jan  1 13:09:53 2006
+++ php-src/ext/soap/php_http.c Mon Feb  6 10:16:15 2006
@@ -17,7 +17,7 @@
   |          Dmitry Stogov <[EMAIL PROTECTED]>                             |
   +----------------------------------------------------------------------+
 */
-/* $Id: php_http.c,v 1.83 2006/01/01 13:09:53 sniper Exp $ */
+/* $Id: php_http.c,v 1.84 2006/02/06 10:16:15 dmitry Exp $ */
 
 #include "php_soap.h"
 #include "ext/standard/base64.h"
@@ -223,6 +223,7 @@
 {
        char *request;
        smart_str soap_headers = {0};
+       smart_str soap_headers_z = {0};
        int request_size, err;
        php_url *phpurl = NULL;
        php_stream *stream;
@@ -250,7 +251,7 @@
                int kind  = Z_LVAL_PP(tmp) & SOAP_COMPRESSION_DEFLATE;
 
          if ((Z_LVAL_PP(tmp) & SOAP_COMPRESSION_ACCEPT) != 0) {
-                       smart_str_append_const(&soap_headers,"Accept-Encoding: 
gzip, deflate\r\n");
+                       
smart_str_append_const(&soap_headers_z,"Accept-Encoding: gzip, deflate\r\n");
          }
          if (level > 0) {
                        zval func;
@@ -270,11 +271,11 @@
            if (kind == SOAP_COMPRESSION_DEFLATE) {
                n = 2;
                                ZVAL_STRING(&func, "gzcompress", 0);
-                               
smart_str_append_const(&soap_headers,"Content-Encoding: deflate\r\n");
+                               
smart_str_append_const(&soap_headers_z,"Content-Encoding: deflate\r\n");
            } else {
              n = 3;
                                ZVAL_STRING(&func, "gzencode", 0);
-                               
smart_str_append_const(&soap_headers,"Content-Encoding: gzip\r\n");
+                               
smart_str_append_const(&soap_headers_z,"Content-Encoding: gzip\r\n");
                                ZVAL_LONG(params[2], 1);
            }
                        if (call_user_function(CG(function_table), 
(zval**)NULL, &func, &retval, n, params TSRMLS_CC) == SUCCESS &&
@@ -420,6 +421,10 @@
                        "Accept: text/html; text/xml; text/plain\r\n"
 */
                        "User-Agent: PHP SOAP 0.1\r\n");
+
+               smart_str_append(&soap_headers, &soap_headers_z);
+               smart_str_free(&soap_headers_z);
+               
                if (soap_version == SOAP_1_2) {
                        smart_str_append_const(&soap_headers,"Content-Type: 
application/soap+xml; charset=utf-8");
                        if (soapaction) {

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to