summaryrefslogtreecommitdiff
path: root/ext/soap/soap.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2005-01-20 17:29:16 +0000
committerDmitry Stogov <dmitry@php.net>2005-01-20 17:29:16 +0000
commita343fc848d503366f34e0d8a898d8e1badcac4d5 (patch)
tree045c844594ac1e123ec63496ad187f44f6a9c2c0 /ext/soap/soap.c
parent93e4213bfe93059e33905a9c600a68f34055f21c (diff)
downloadphp-git-a343fc848d503366f34e0d8a898d8e1badcac4d5.tar.gz
Support for HTTP error codes
Diffstat (limited to 'ext/soap/soap.c')
-rw-r--r--ext/soap/soap.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/ext/soap/soap.c b/ext/soap/soap.c
index e9a0d1278d..a9a258c37a 100644
--- a/ext/soap/soap.c
+++ b/ext/soap/soap.c
@@ -2142,7 +2142,9 @@ static int do_request(zval *this_ptr, xmlDoc *request, char *location, char *act
add_soap_fault(this_ptr, "Client", "SoapSlient::__doRequest() failed", NULL, NULL TSRMLS_CC);
ret = FALSE;
} else if (Z_TYPE_P(response) != IS_STRING) {
- add_soap_fault(this_ptr, "Client", "SoapSlient::__doRequest() returned non string value", NULL, NULL TSRMLS_CC);
+ if (zend_hash_find(Z_OBJPROP_P(this_ptr), "__soap_fault", sizeof("__soap_fault"), (void **) &fault) == FAILURE) {
+ add_soap_fault(this_ptr, "Client", "SoapSlient::__doRequest() returned non string value", NULL, NULL TSRMLS_CC);
+ }
ret = FALSE;
} else if (zend_hash_find(Z_OBJPROP_P(this_ptr), "trace", sizeof("trace"), (void **) &trace) == SUCCESS &&
Z_LVAL_PP(trace) > 0) {