From: Dmitry Stogov Date: Fri, 19 Dec 2003 11:26:52 +0000 (+0000) Subject: Error reporting on unset string offset was added (Bug #24773 Zend/tests/bug24773... X-Git-Tag: php-5.0.0b3RC2~41 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5adf502a6955c418077e3034d5328c360682020b;p=php Error reporting on unset string offset was added (Bug #24773 Zend/tests/bug24773.phpt) --- diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index d8ebbf24cd..3601e4ce75 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -1930,7 +1930,9 @@ int zend_fetch_dim_unset_handler(ZEND_OPCODE_HANDLER_ARGS) } */ zend_fetch_dimension_address(&EX(opline)->result, &EX(opline)->op1, &EX(opline)->op2, EX(Ts), BP_VAR_R TSRMLS_CC); - if (EX_T(EX(opline)->result.u.var).var.ptr_ptr != NULL) { + if (EX_T(EX(opline)->result.u.var).var.ptr_ptr == NULL) { + zend_error(E_ERROR, "Cannot unset string offsets"); + } else { PZVAL_UNLOCK(*EX_T(EX(opline)->result.u.var).var.ptr_ptr); if (EX_T(EX(opline)->result.u.var).var.ptr_ptr != &EG(uninitialized_zval_ptr)) { SEPARATE_ZVAL_IF_NOT_REF(EX_T(EX(opline)->result.u.var).var.ptr_ptr); @@ -3477,6 +3479,9 @@ int zend_unset_dim_obj_handler(ZEND_OPCODE_HANDLER_ARGS) } Z_OBJ_HT_P(*container)->unset_dimension(*container, offset TSRMLS_CC); break; + case IS_STRING: + zend_error(E_ERROR, "Cannot unset string offsets"); + break; default: ht = NULL; break;