dmitry Thu May 10 14:58:17 2007 UTC Added files: (Branch: PHP_5_2) /php-src/ext/soap/tests/bugs bug41337.phpt bug41337.wsdl
Modified files: /php-src NEWS /php-src/ext/soap php_sdl.c Log: Fixed bug #41337 (WSDL parsing doesn't ignore non soap bindings) http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.692&r2=1.2027.2.547.2.693&diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.692 php-src/NEWS:1.2027.2.547.2.693 --- php-src/NEWS:1.2027.2.547.2.692 Thu May 10 13:16:51 2007 +++ php-src/NEWS Thu May 10 14:58:17 2007 @@ -8,6 +8,7 @@ - Fixed altering $this via argument named "this". (Dmitry) - Fixed PHP CLI to use the php.ini from the binary location. (Hannes) - Fixed bug #41347 (checkdnsrr() segfaults on empty hostname). (Scott) +- Fixed bug #41337 (WSDL parsing doesn't ignore non soap bindings). (Dmitry) - Fixed bug #41326 (Writing empty tags with Xmlwriter::WriteElement[ns]) (Pierre) - Fixed bug #41321 (downgrade read errors in getimagesize() to E_NOTICE). http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_sdl.c?r1=1.88.2.12.2.7&r2=1.88.2.12.2.8&diff_format=u Index: php-src/ext/soap/php_sdl.c diff -u php-src/ext/soap/php_sdl.c:1.88.2.12.2.7 php-src/ext/soap/php_sdl.c:1.88.2.12.2.8 --- php-src/ext/soap/php_sdl.c:1.88.2.12.2.7 Fri Feb 23 20:40:55 2007 +++ php-src/ext/soap/php_sdl.c Thu May 10 14:58:17 2007 @@ -17,7 +17,7 @@ | Dmitry Stogov <[EMAIL PROTECTED]> | +----------------------------------------------------------------------+ */ -/* $Id: php_sdl.c,v 1.88.2.12.2.7 2007/02/23 20:40:55 stas Exp $ */ +/* $Id: php_sdl.c,v 1.88.2.12.2.8 2007/05/10 14:58:17 dmitry Exp $ */ #include "php_soap.h" #include "ext/libxml/php_libxml.h" @@ -654,6 +654,7 @@ for (i = 0; i < n; i++) { xmlNodePtr *tmp, service; xmlNodePtr trav, port; + int has_soap_port = 0; zend_hash_get_current_data(&ctx.services, (void **)&tmp); service = *tmp; @@ -716,8 +717,15 @@ trav2 = trav2->next; } if (!address) { - soap_error0(E_ERROR, "Parsing WSDL: No address associated with <port>"); + if (has_soap_port || trav->next) { + efree(tmpbinding); + trav = trav->next; + continue; + } else { + soap_error0(E_ERROR, "Parsing WSDL: No address associated with <port>"); + } } + has_soap_port = 1; location = get_attribute(address->properties, "location"); if (!location) { http://cvs.php.net/viewvc.cgi/php-src/ext/soap/tests/bugs/bug41337.phpt?view=markup&rev=1.1 Index: php-src/ext/soap/tests/bugs/bug41337.phpt +++ php-src/ext/soap/tests/bugs/bug41337.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/soap/tests/bugs/bug41337.wsdl?view=markup&rev=1.1 Index: php-src/ext/soap/tests/bugs/bug41337.wsdl +++ php-src/ext/soap/tests/bugs/bug41337.wsdl -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php