diff options
Diffstat (limited to 'Zend/zend_execute.c')
-rw-r--r-- | Zend/zend_execute.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index 3611c5b008..c1ff85bff8 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -3187,7 +3187,9 @@ ZEND_API zval* zend_assign_to_typed_ref(zval *variable_ptr, zval *value, zend_uc Z_TRY_DELREF_P(value); } if (!ret) { - zval_ptr_dtor(value); + if (value_type & (IS_VAR|IS_TMP_VAR)) { + zval_ptr_dtor(value); + } return Z_REFVAL_P(variable_ptr); } |