diff options
| -rw-r--r-- | Zend/zend_execute.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index 5e515aa532..74ebb354b5 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -598,11 +598,6 @@ static inline void zend_assign_to_object(znode *result, zval **object_ptr, zval *retval = EG(uninitialized_zval_ptr); PZVAL_LOCK(*retval); } - if (value_op->op_type == IS_TMP_VAR) { - FREE_ZVAL(value); - } else if (value_op->op_type == IS_CONST) { - zval_ptr_dtor(&value); - } FREE_OP(free_value); return; } @@ -638,6 +633,11 @@ static inline void zend_assign_to_object(znode *result, zval **object_ptr, zval *retval = EG(uninitialized_zval_ptr); PZVAL_LOCK(*retval); } + if (value_op->op_type == IS_TMP_VAR) { + FREE_ZVAL(value); + } else if (value_op->op_type == IS_CONST) { + zval_ptr_dtor(&value); + } FREE_OP(free_value); return; } |
