summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2015-03-02 12:27:36 +0300
committerDmitry Stogov <dmitry@zend.com>2015-03-02 12:27:36 +0300
commitd5248f67b58ac3107fec82c5b937fc3f4c89784a (patch)
tree4a0e54c58814f78e5c7f28e594e534714b197798
parent8584cc010aaf5dfa9e314d3e8f2eb14aee78225b (diff)
downloadphp-git-d5248f67b58ac3107fec82c5b937fc3f4c89784a.tar.gz
Check variable type before its usage as IS_ARRAY.
-rw-r--r--ext/soap/soap.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ext/soap/soap.c b/ext/soap/soap.c
index eaa57d9032..8790605f8e 100644
--- a/ext/soap/soap.c
+++ b/ext/soap/soap.c
@@ -2884,7 +2884,8 @@ PHP_METHOD(SoapClient, __call)
}
/* Add default headers */
- if (zend_hash_find(Z_OBJPROP_P(this_ptr), "__default_headers", sizeof("__default_headers"), (void **) &tmp)==SUCCESS) {
+ if (zend_hash_find(Z_OBJPROP_P(this_ptr), "__default_headers", sizeof("__default_headers"), (void **) &tmp)==SUCCESS &&
+ Z_TYPE_PP(tmp) == IS_ARRAY) {
HashTable *default_headers = Z_ARRVAL_P(*tmp);
if (soap_headers) {
if (!free_soap_headers) {