diff options
author | Craig Duncan <git@duncanc.co.uk> | 2016-11-20 17:41:14 +0000 |
---|---|---|
committer | Nikita Popov <nikic@php.net> | 2016-11-20 21:18:28 +0100 |
commit | 685b1292e9a050ec413662c4b7dcf69030d2010c (patch) | |
tree | dad78fbfda4a3d63a6484591e0ea8c0fea8e01cf /ext/soap/soap.c | |
parent | bc30206b8ad4975126bd36f48add769d0d9a221a (diff) | |
download | php-git-685b1292e9a050ec413662c4b7dcf69030d2010c.tar.gz |
Fix bug #73538
Remove any previous default headers and replace with the specified
ones, as documented, and as is the case when a single header is
passed.
Diffstat (limited to 'ext/soap/soap.c')
-rw-r--r-- | ext/soap/soap.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/ext/soap/soap.c b/ext/soap/soap.c index a2170283c8..ffa988472c 100644 --- a/ext/soap/soap.c +++ b/ext/soap/soap.c @@ -3209,12 +3209,8 @@ PHP_METHOD(SoapClient, __setSoapHeaders) if (headers == NULL || Z_TYPE_P(headers) == IS_NULL) { zend_hash_str_del(Z_OBJPROP_P(this_ptr), "__default_headers", sizeof("__default_headers")-1); } else if (Z_TYPE_P(headers) == IS_ARRAY) { - zval *default_headers; - verify_soap_headers_array(Z_ARRVAL_P(headers)); - if ((default_headers = zend_hash_str_find(Z_OBJPROP_P(this_ptr), "__default_headers", sizeof("__default_headers")-1)) == NULL) { - add_property_zval(this_ptr, "__default_headers", headers); - } + add_property_zval(this_ptr, "__default_headers", headers); } else if (Z_TYPE_P(headers) == IS_OBJECT && instanceof_function(Z_OBJCE_P(headers), soap_header_class_entry)) { zval default_headers; |