From c45f7b97a3252767b31d38fd7e761b9291ed2152 Mon Sep 17 00:00:00 2001 From: Xinchen Hui Date: Fri, 8 Apr 2016 17:57:51 +0800 Subject: Fixed bug #71986 (Nested foreach assign-by-reference creates broken variables) --- ext/soap/php_encoding.c | 1 + 1 file changed, 1 insertion(+) (limited to 'ext/soap/php_encoding.c') diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c index 1fdc5a8788..fc389f2365 100644 --- a/ext/soap/php_encoding.c +++ b/ext/soap/php_encoding.c @@ -3512,6 +3512,7 @@ static encodePtr get_array_type(xmlNodePtr node, zval *array, smart_str *type) ht = Z_ARRVAL_P(array); ZEND_HASH_FOREACH_VAL_IND(ht, tmp) { + ZVAL_DEREF(tmp); if (Z_TYPE_P(tmp) == IS_OBJECT && Z_OBJCE_P(tmp) == soap_var_class_entry) { zval *ztype; -- cgit v1.2.1