dmitry Fri Dec 9 10:29:29 2005 EDT Modified files: (Branch: PHP_5_0) /php-src/ext/soap php_encoding.c php_schema.c php_sdl.c soap.c Log: Fixed possible SIGSEGV (Rob Richards) http://cvs.php.net/diff.php/php-src/ext/soap/php_encoding.c?r1=1.71.2.30&r2=1.71.2.31&ty=u Index: php-src/ext/soap/php_encoding.c diff -u php-src/ext/soap/php_encoding.c:1.71.2.30 php-src/ext/soap/php_encoding.c:1.71.2.31 --- php-src/ext/soap/php_encoding.c:1.71.2.30 Tue Nov 1 06:11:58 2005 +++ php-src/ext/soap/php_encoding.c Fri Dec 9 10:29:27 2005 @@ -17,7 +17,7 @@ | Dmitry Stogov <[EMAIL PROTECTED]> | +----------------------------------------------------------------------+ */ -/* $Id: php_encoding.c,v 1.71.2.30 2005/11/01 11:11:58 dmitry Exp $ */ +/* $Id: php_encoding.c,v 1.71.2.31 2005/12/09 15:29:27 dmitry Exp $ */ #include <time.h> @@ -265,7 +265,7 @@ if (zend_hash_find(ht, "enc_ns", sizeof("enc_ns"), (void **)&zns) == SUCCESS) { enc = get_encoder(SOAP_GLOBAL(sdl), Z_STRVAL_PP(zns), Z_STRVAL_PP(zstype)); } else { - enc = get_encoder(SOAP_GLOBAL(sdl), NULL, Z_STRVAL_PP(zstype)); + enc = get_encoder_ex(SOAP_GLOBAL(sdl), Z_STRVAL_PP(zstype), Z_STRLEN_PP(zstype)); } } } http://cvs.php.net/diff.php/php-src/ext/soap/php_schema.c?r1=1.49.2.7&r2=1.49.2.8&ty=u Index: php-src/ext/soap/php_schema.c diff -u php-src/ext/soap/php_schema.c:1.49.2.7 php-src/ext/soap/php_schema.c:1.49.2.8 --- php-src/ext/soap/php_schema.c:1.49.2.7 Wed Sep 28 07:25:38 2005 +++ php-src/ext/soap/php_schema.c Fri Dec 9 10:29:28 2005 @@ -17,7 +17,7 @@ | Dmitry Stogov <[EMAIL PROTECTED]> | +----------------------------------------------------------------------+ */ -/* $Id: php_schema.c,v 1.49.2.7 2005/09/28 11:25:38 dmitry Exp $ */ +/* $Id: php_schema.c,v 1.49.2.8 2005/12/09 15:29:28 dmitry Exp $ */ #include "php_soap.h" #include "libxml/uri.h" @@ -232,7 +232,11 @@ location = get_attribute(trav->properties, "schemaLocation"); if (ns != NULL && tns != NULL && strcmp(ns->children->content,tns->children->content) == 0) { - soap_error1(E_ERROR, "Parsing Schema: can't import schema from '%s', namespace must not match the enclosing schema 'targetNamespace'", location->children->content); + if (location) { + soap_error1(E_ERROR, "Parsing Schema: can't import schema from '%s', namespace must not match the enclosing schema 'targetNamespace'", location->children->content); + } else { + soap_error0(E_ERROR, "Parsing Schema: can't import schema. Namespace must not match the enclosing schema 'targetNamespace'"); + } } if (location) { xmlChar *base = xmlNodeGetBase(trav->doc, trav); http://cvs.php.net/diff.php/php-src/ext/soap/php_sdl.c?r1=1.70.2.15&r2=1.70.2.16&ty=u Index: php-src/ext/soap/php_sdl.c diff -u php-src/ext/soap/php_sdl.c:1.70.2.15 php-src/ext/soap/php_sdl.c:1.70.2.16 --- php-src/ext/soap/php_sdl.c:1.70.2.15 Mon Nov 28 05:07:56 2005 +++ php-src/ext/soap/php_sdl.c Fri Dec 9 10:29:28 2005 @@ -17,7 +17,7 @@ | Dmitry Stogov <[EMAIL PROTECTED]> | +----------------------------------------------------------------------+ */ -/* $Id: php_sdl.c,v 1.70.2.15 2005/11/28 10:07:56 dmitry Exp $ */ +/* $Id: php_sdl.c,v 1.70.2.16 2005/12/09 15:29:28 dmitry Exp $ */ #include "php_soap.h" #include "ext/libxml/php_libxml.h" @@ -410,10 +410,10 @@ if (!h->ns && h->element->namens) { h->ns = estrdup(h->element->namens); } - } - if (h->element->name) { - efree(h->name); - h->name = estrdup(h->element->name); + if (h->element->name) { + efree(h->name); + h->name = estrdup(h->element->name); + } } } } http://cvs.php.net/diff.php/php-src/ext/soap/soap.c?r1=1.110.2.46&r2=1.110.2.47&ty=u Index: php-src/ext/soap/soap.c diff -u php-src/ext/soap/soap.c:1.110.2.46 php-src/ext/soap/soap.c:1.110.2.47 --- php-src/ext/soap/soap.c:1.110.2.46 Wed Oct 5 03:02:10 2005 +++ php-src/ext/soap/soap.c Fri Dec 9 10:29:28 2005 @@ -17,7 +17,7 @@ | Dmitry Stogov <[EMAIL PROTECTED]> | +----------------------------------------------------------------------+ */ -/* $Id: soap.c,v 1.110.2.46 2005/10/05 07:02:10 dmitry Exp $ */ +/* $Id: soap.c,v 1.110.2.47 2005/12/09 15:29:28 dmitry Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -1797,8 +1797,8 @@ /* }}} */ -/* {{{ proto SoapServer::fault - SoapServer::fault */ +/* {{{ proto SoapServer::fault ( staring code, string string [, string actor [, mixed details [, string name]]] ) + Issue SoapFault indicating an error */ PHP_METHOD(SoapServer, fault) { char *code, *string, *actor=NULL, *name=NULL;
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php