]> granicus.if.org Git - php/commitdiff
Fixed bug #70993 (Array key references break argument processing)
authorXinchen Hui <laruence@gmail.com>
Mon, 30 Nov 2015 02:50:23 +0000 (10:50 +0800)
committerXinchen Hui <laruence@gmail.com>
Mon, 30 Nov 2015 02:50:23 +0000 (10:50 +0800)
NEWS
ext/soap/soap.c

diff --git a/NEWS b/NEWS
index e19defa0f4503bc8d2d1e678335f0306eca2d6f8..c5aa1f30fddbab41cb6a3f18b5c65c4182febc02 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -50,6 +50,10 @@ PHP                                                                        NEWS
 - Streams/Socket
   . Add IPV6_V6ONLY constant / make it usable in stream contexts. (Bob)
 
+- Soap:
+  . Fixed bug #70993 (Array key references break argument processing).
+    (Laruence)
+
 26 Nov 2015, PHP 7.0.0 RC 8
 
 - Core:
index 4c746aaf29dce3ef8e32cbb9056985120bd25c67..b6fc5a0f3dabf778bd0c55fdebef24835db7f6b4 100644 (file)
@@ -2941,6 +2941,7 @@ PHP_METHOD(SoapClient, __call)
                real_args = safe_emalloc(sizeof(zval), arg_count, 0);
                ZEND_HASH_FOREACH_VAL(Z_ARRVAL_P(args), param) {
                        /*zval_add_ref(param);*/
+                       ZVAL_DEREF(param);
                        ZVAL_COPY_VALUE(&real_args[i], param);
                        i++;
                } ZEND_HASH_FOREACH_END();