dmitry Wed Feb 25 09:37:08 2004 EDT Added files: /php-src/ext/soap/tests server019.phpt server020.phpt
Modified files: /php-src/ext/soap soap.c Log: HTTP compression (memory leak was fixed) http://cvs.php.net/diff.php/php-src/ext/soap/soap.c?r1=1.92&r2=1.93&ty=u Index: php-src/ext/soap/soap.c diff -u php-src/ext/soap/soap.c:1.92 php-src/ext/soap/soap.c:1.93 --- php-src/ext/soap/soap.c:1.92 Wed Feb 25 09:04:41 2004 +++ php-src/ext/soap/soap.c Wed Feb 25 09:37:05 2004 @@ -17,7 +17,7 @@ | Dmitry Stogov <[EMAIL PROTECTED]> | +----------------------------------------------------------------------+ */ -/* $Id: soap.c,v 1.92 2004/02/25 14:04:41 dmitry Exp $ */ +/* $Id: soap.c,v 1.93 2004/02/25 14:37:05 dmitry Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -1285,6 +1285,7 @@ if (call_user_function(CG(function_table), (zval**)NULL, &func, &retval, 1, params TSRMLS_CC) == SUCCESS && Z_TYPE(retval) == IS_STRING) { doc_request = soap_xmlParseMemory(Z_STRVAL(retval),Z_STRLEN(retval)); + zval_dtor(&retval); } else { php_error(E_ERROR,"Can't uncompress compressed request"); } http://cvs.php.net/co.php/php-src/ext/soap/tests/server019.phpt?r=1.1&p=1 Index: php-src/ext/soap/tests/server019.phpt +++ php-src/ext/soap/tests/server019.phpt --TEST-- SOAP Server 19: compressed request (gzip) --SKIPIF-- <?php require_once('skipif.inc'); if (!extension_loaded('zlib')) die('skip zlib extension not available'); ?> --FILE-- <?php function test() { return "Hello World"; } $server = new soapserver(null,array('uri'=>"http://testuri.org")); $server->addfunction("test"); $HTTP_RAW_POST_DATA = gzencode(<<<EOF <?xml version="1.0" encoding="ISO-8859-1"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:si="http://soapinterop.org/xsd"> <SOAP-ENV:Body> <ns1:test xmlns:ns1="http://testuri.org" /> </SOAP-ENV:Body> </SOAP-ENV:Envelope> EOF , 9, FORCE_GZIP); $_SERVER['HTTP_CONTENT_ENCODING'] = "gzip"; $server->handle(); echo "ok\n"; ?> --EXPECT-- <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://testuri.org" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><ns1:testResponse><return xsi:type="xsd:string">Hello World</return></ns1:testResponse></SOAP-ENV:Body></SOAP-ENV:Envelope> ok http://cvs.php.net/co.php/php-src/ext/soap/tests/server020.phpt?r=1.1&p=1 Index: php-src/ext/soap/tests/server020.phpt +++ php-src/ext/soap/tests/server020.phpt --TEST-- SOAP Server 20: compressed request (deflate) --SKIPIF-- <?php require_once('skipif.inc'); if (!extension_loaded('zlib')) die('skip zlib extension not available'); ?> --FILE-- <?php function test() { return "Hello World"; } $server = new soapserver(null,array('uri'=>"http://testuri.org")); $server->addfunction("test"); $HTTP_RAW_POST_DATA = gzcompress(<<<EOF <?xml version="1.0" encoding="ISO-8859-1"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:si="http://soapinterop.org/xsd"> <SOAP-ENV:Body> <ns1:test xmlns:ns1="http://testuri.org" /> </SOAP-ENV:Body> </SOAP-ENV:Envelope> EOF , 9); $_SERVER['HTTP_CONTENT_ENCODING'] = "deflate"; $server->handle(); echo "ok\n"; ?> --EXPECT-- <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://testuri.org" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><ns1:testResponse><return xsi:type="xsd:string">Hello World</return></ns1:testResponse></SOAP-ENV:Body></SOAP-ENV:Envelope> ok -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php