mirror of
https://github.com/php/php-src.git
synced 2025-08-16 05:58:45 +02:00
Fixed bug #39454 (Returning a SOAP array segfaults PHP)
This commit is contained in:
parent
ce958eded5
commit
31bfc6e55b
2 changed files with 9 additions and 0 deletions
1
NEWS
1
NEWS
|
@ -34,6 +34,7 @@ PHP NEWS
|
|||
php_filter.h).
|
||||
- Fixed wrong signature initialization in imagepng (Takeshi Abe)
|
||||
- Added optimization for imageline with horizontal and vertial lines (Pierre)
|
||||
- Fixed bug #39454 (Returning a SOAP array segfaults PHP). (Dmitry)
|
||||
- Fixed bug #39414 (Syntax error while compiling with Sun Workshop Complier).
|
||||
(Johannes)
|
||||
- Fixed bug #39398 (Booleans are not automatically translated to integers).
|
||||
|
|
|
@ -2023,6 +2023,7 @@ static xmlNodePtr to_xml_array(encodeTypePtr type, zval *data, int style, xmlNod
|
|||
zend_hash_find(sdl_type->attributes, SOAP_1_1_ENC_NAMESPACE":arrayType",
|
||||
sizeof(SOAP_1_1_ENC_NAMESPACE":arrayType"),
|
||||
(void **)&arrayType) == SUCCESS &&
|
||||
(*arrayType)->extraAttributes &&
|
||||
zend_hash_find((*arrayType)->extraAttributes, WSDL_NAMESPACE":arrayType", sizeof(WSDL_NAMESPACE":arrayType"), (void **)&ext) == SUCCESS) {
|
||||
|
||||
char *value, *end;
|
||||
|
@ -2071,6 +2072,7 @@ static xmlNodePtr to_xml_array(encodeTypePtr type, zval *data, int style, xmlNod
|
|||
zend_hash_find(sdl_type->attributes, SOAP_1_2_ENC_NAMESPACE":itemType",
|
||||
sizeof(SOAP_1_2_ENC_NAMESPACE":itemType"),
|
||||
(void **)&arrayType) == SUCCESS &&
|
||||
(*arrayType)->extraAttributes &&
|
||||
zend_hash_find((*arrayType)->extraAttributes, WSDL_NAMESPACE":itemType", sizeof(WSDL_NAMESPACE":itemType"), (void **)&ext) == SUCCESS) {
|
||||
if ((*ext)->ns != NULL) {
|
||||
enc = get_encoder(SOAP_GLOBAL(sdl), (*ext)->ns, (*ext)->val);
|
||||
|
@ -2081,6 +2083,7 @@ static xmlNodePtr to_xml_array(encodeTypePtr type, zval *data, int style, xmlNod
|
|||
if (zend_hash_find(sdl_type->attributes, SOAP_1_2_ENC_NAMESPACE":arraySize",
|
||||
sizeof(SOAP_1_2_ENC_NAMESPACE":arraySize"),
|
||||
(void **)&arrayType) == SUCCESS &&
|
||||
(*arrayType)->extraAttributes &&
|
||||
zend_hash_find((*arrayType)->extraAttributes, WSDL_NAMESPACE":arraySize", sizeof(WSDL_NAMESPACE":arraysize"), (void **)&ext) == SUCCESS) {
|
||||
dimension = calc_dimension_12((*ext)->val);
|
||||
dims = get_position_12(dimension, (*ext)->val);
|
||||
|
@ -2101,6 +2104,7 @@ static xmlNodePtr to_xml_array(encodeTypePtr type, zval *data, int style, xmlNod
|
|||
zend_hash_find(sdl_type->attributes, SOAP_1_2_ENC_NAMESPACE":arraySize",
|
||||
sizeof(SOAP_1_2_ENC_NAMESPACE":arraySize"),
|
||||
(void **)&arrayType) == SUCCESS &&
|
||||
(*arrayType)->extraAttributes &&
|
||||
zend_hash_find((*arrayType)->extraAttributes, WSDL_NAMESPACE":arraySize", sizeof(WSDL_NAMESPACE":arraySize"), (void **)&ext) == SUCCESS) {
|
||||
dimension = calc_dimension_12((*ext)->val);
|
||||
dims = get_position_12(dimension, (*ext)->val);
|
||||
|
@ -2258,6 +2262,7 @@ static zval *to_zval_array(encodeTypePtr type, xmlNodePtr data)
|
|||
zend_hash_find(type->sdl_type->attributes, SOAP_1_1_ENC_NAMESPACE":arrayType",
|
||||
sizeof(SOAP_1_1_ENC_NAMESPACE":arrayType"),
|
||||
(void **)&arrayType) == SUCCESS &&
|
||||
(*arrayType)->extraAttributes &&
|
||||
zend_hash_find((*arrayType)->extraAttributes, WSDL_NAMESPACE":arrayType", sizeof(WSDL_NAMESPACE":arrayType"), (void **)&ext) == SUCCESS) {
|
||||
char *type, *end;
|
||||
|
||||
|
@ -2279,6 +2284,7 @@ static zval *to_zval_array(encodeTypePtr type, xmlNodePtr data)
|
|||
zend_hash_find(type->sdl_type->attributes, SOAP_1_2_ENC_NAMESPACE":itemType",
|
||||
sizeof(SOAP_1_2_ENC_NAMESPACE":itemType"),
|
||||
(void **)&arrayType) == SUCCESS &&
|
||||
(*arrayType)->extraAttributes &&
|
||||
zend_hash_find((*arrayType)->extraAttributes, WSDL_NAMESPACE":itemType", sizeof(WSDL_NAMESPACE":itemType"), (void **)&ext) == SUCCESS) {
|
||||
|
||||
if ((*ext)->ns != NULL) {
|
||||
|
@ -2288,6 +2294,7 @@ static zval *to_zval_array(encodeTypePtr type, xmlNodePtr data)
|
|||
if (zend_hash_find(type->sdl_type->attributes, SOAP_1_2_ENC_NAMESPACE":arraySize",
|
||||
sizeof(SOAP_1_2_ENC_NAMESPACE":arraySize"),
|
||||
(void **)&arrayType) == SUCCESS &&
|
||||
(*arrayType)->extraAttributes &&
|
||||
zend_hash_find((*arrayType)->extraAttributes, WSDL_NAMESPACE":arraySize", sizeof(WSDL_NAMESPACE":arraysize"), (void **)&ext) == SUCCESS) {
|
||||
dimension = calc_dimension_12((*ext)->val);
|
||||
dims = get_position_12(dimension, (*ext)->val);
|
||||
|
@ -2300,6 +2307,7 @@ static zval *to_zval_array(encodeTypePtr type, xmlNodePtr data)
|
|||
zend_hash_find(type->sdl_type->attributes, SOAP_1_2_ENC_NAMESPACE":arraySize",
|
||||
sizeof(SOAP_1_2_ENC_NAMESPACE":arraySize"),
|
||||
(void **)&arrayType) == SUCCESS &&
|
||||
(*arrayType)->extraAttributes &&
|
||||
zend_hash_find((*arrayType)->extraAttributes, WSDL_NAMESPACE":arraySize", sizeof(WSDL_NAMESPACE":arraysize"), (void **)&ext) == SUCCESS) {
|
||||
|
||||
dimension = calc_dimension_12((*ext)->val);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue