From b81d63d74a543c2b3a1e3267143aa46135ccb70d Mon Sep 17 00:00:00 2001 From: Antony Dovgal Date: Wed, 6 Jun 2007 08:33:54 +0000 Subject: [PATCH] fix #41608 (segfault on a weird code with objects and switch()) --- Zend/zend_execute.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index ef88fca2b2..0792be6e77 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -389,7 +389,7 @@ static inline void zend_switch_free(zend_op *opline, temp_variable *Ts TSRMLS_DC * quick & silent get_zval_ptr, and FREE_OP */ PZVAL_UNLOCK_FREE(T->str_offset.str); - } else { + } else if (T(opline->op1.u.var).var.ptr) { zval_ptr_dtor(&T(opline->op1.u.var).var.ptr); if (opline->extended_value & ZEND_FE_RESET_VARIABLE) { /* foreach() free */ zval_ptr_dtor(&T(opline->op1.u.var).var.ptr); -- 2.50.1