From: Xinchen Hui <laruence@php.net> Date: Thu, 4 Apr 2013 05:40:21 +0000 (+0800) Subject: Fixed Bug #64578 X-Git-Tag: php-5.4.15RC1~32^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7fc8077e4caf1ac62e9591775f7779eb1a7c25ad;p=php Fixed Bug #64578 --- diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index de7cd4a486..16dc08e502 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -937,6 +937,10 @@ convert_to_array: zend_error_noreturn(E_ERROR, "[] operator not supported for strings"); } + if (type != BP_VAR_UNSET) { + SEPARATE_ZVAL_IF_NOT_REF(container_ptr); + } + if (Z_TYPE_P(dim) != IS_LONG) { switch(Z_TYPE_P(dim)) { /* case IS_LONG: */ @@ -956,9 +960,6 @@ convert_to_array: convert_to_long(&tmp); dim = &tmp; } - if (type != BP_VAR_UNSET) { - SEPARATE_ZVAL_IF_NOT_REF(container_ptr); - } container = *container_ptr; result->str_offset.str = container; PZVAL_LOCK(container);