From 2adecc6dc283fa39f4fc9d44ec128be497152323 Mon Sep 17 00:00:00 2001 From: Dmitry Stogov Date: Tue, 18 Mar 2014 12:37:51 +0400 Subject: [PATCH] Fixed reference separation --- Zend/zend_object_handlers.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Zend/zend_object_handlers.c b/Zend/zend_object_handlers.c index ec5c7a312a8..24a3a9ebd8a 100644 --- a/Zend/zend_object_handlers.c +++ b/Zend/zend_object_handlers.c @@ -642,7 +642,10 @@ write_std_property: /* if we assign referenced variable, we should separate it */ if (Z_REFCOUNTED_P(value)) { if (Z_ISREF_P(value)) { - ZVAL_DUP(value, Z_REFVAL_P(value)); + zval tmp; + + ZVAL_DUP(&tmp, Z_REFVAL_P(value)); + value = &tmp; } else { Z_ADDREF_P(value); }