diff options
author | Dmitry Stogov <dmitry@php.net> | 2004-05-21 14:50:19 +0000 |
---|---|---|
committer | Dmitry Stogov <dmitry@php.net> | 2004-05-21 14:50:19 +0000 |
commit | b9bb0d77a08dd9f0078600b304aea570ffc9bacb (patch) | |
tree | 3ca3341d97e7b3d4e3cc9820c4769e63f0d6b418 /ext/soap/php_packet_soap.c | |
parent | d8d7dd7e14afdd221f5a4ef4440e64eeac85d576 (diff) | |
download | php-git-b9bb0d77a08dd9f0078600b304aea570ffc9bacb.tar.gz |
Fixed bug #28239 (No results returned on SOAP call, no error given)
Diffstat (limited to 'ext/soap/php_packet_soap.c')
-rw-r--r-- | ext/soap/php_packet_soap.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/ext/soap/php_packet_soap.c b/ext/soap/php_packet_soap.c index 68cb83b77c..b78fdee888 100644 --- a/ext/soap/php_packet_soap.c +++ b/ext/soap/php_packet_soap.c @@ -268,11 +268,16 @@ int parse_packet_soap(zval *this_ptr, char *buffer, int buffer_size, sdlFunction val = cur; } else { val = get_node(cur->children, param->paramName); - if (val == NULL && res_count == 1) { - val = get_node(cur->children, "return"); - } - if (val == NULL && res_count == 1) { - val = get_node(cur->children, "result"); + if (res_count == 1) { + if (val == NULL) { + val = get_node(cur->children, "return"); + } + if (val == NULL) { + val = get_node(cur->children, "result"); + } + if (val == NULL && cur->children && cur->children->next == NULL) { + val = cur->children; + } } } } |