diff options
| author | Dmitry Stogov <dmitry@zend.com> | 2014-03-04 17:23:23 +0400 |
|---|---|---|
| committer | Dmitry Stogov <dmitry@zend.com> | 2014-03-04 17:23:23 +0400 |
| commit | 38151a38ec31af33e10513cc39e7cac8f819f120 (patch) | |
| tree | 81009190a3b12e567589a59c2d686dc9b52d4372 /Zend/zend_vm_execute.h | |
| parent | ba30f1e946b07c1e6c9571f348a2c3340f2df39d (diff) | |
| download | php-git-38151a38ec31af33e10513cc39e7cac8f819f120.tar.gz | |
Fixed dereferencing of value returned from function (foo()[1] = ...)
Diffstat (limited to 'Zend/zend_vm_execute.h')
| -rw-r--r-- | Zend/zend_vm_execute.h | 516 |
1 files changed, 258 insertions, 258 deletions
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h index a1779caf77..cbe5aa07ac 100644 --- a/Zend/zend_vm_execute.h +++ b/Zend/zend_vm_execute.h @@ -14517,9 +14517,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HA } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, opline->op2.zv, IS_CONST, BP_VAR_W TSRMLS_CC); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; @@ -14559,9 +14559,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_H } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, opline->op2.zv, IS_CONST, BP_VAR_RW TSRMLS_CC); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -14596,9 +14596,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CONST_HANDLER(ZEND_OP zend_error_noreturn(E_ERROR, "Cannot use string offset as an array"); } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, opline->op2.zv, IS_CONST, BP_VAR_W TSRMLS_CC); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; } else { @@ -14631,9 +14631,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_VAR_CONST_HANDLER(ZEND_OPCOD } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, opline->op2.zv, IS_CONST, BP_VAR_UNSET TSRMLS_CC); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; if (UNEXPECTED(Z_TYPE_P(EX_VAR(opline->result.var)) == IS_STR_OFFSET)) { zend_error_noreturn(E_ERROR, "Cannot unset string offsets"); @@ -14731,9 +14731,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HA //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; /* We are going to assign the result by reference */ @@ -14782,9 +14782,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_H //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -14859,9 +14859,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CONST_HANDLER(ZEND_OP //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -14896,9 +14896,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CONST_HANDLER(ZEND_OPCOD //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; retval_ptr = EX_VAR(opline->result.var); @@ -16803,9 +16803,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HAND } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_TMP_VAR, BP_VAR_W TSRMLS_CC); zval_dtor(free_op2.var); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; @@ -16845,9 +16845,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HAN } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_TMP_VAR, BP_VAR_RW TSRMLS_CC); zval_dtor(free_op2.var); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -16882,9 +16882,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMP_HANDLER(ZEND_OPCO zend_error_noreturn(E_ERROR, "Cannot use string offset as an array"); } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_TMP_VAR, BP_VAR_W TSRMLS_CC); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } zval_dtor(free_op2.var); if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; } else { @@ -16917,9 +16917,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_ } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_TMP_VAR, BP_VAR_UNSET TSRMLS_CC); zval_dtor(free_op2.var); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; if (UNEXPECTED(Z_TYPE_P(EX_VAR(opline->result.var)) == IS_STR_OFFSET)) { zend_error_noreturn(E_ERROR, "Cannot unset string offsets"); @@ -17017,9 +17017,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HAND zval_dtor(free_op2.var); //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; /* We are going to assign the result by reference */ @@ -17068,9 +17068,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HAN zval_dtor(free_op2.var); //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -17145,9 +17145,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMP_HANDLER(ZEND_OPCO zval_dtor(free_op2.var); //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -17182,9 +17182,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_ zval_dtor(free_op2.var); //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; retval_ptr = EX_VAR(opline->result.var); @@ -18986,9 +18986,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HAND } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_VAR, BP_VAR_W TSRMLS_CC); zval_ptr_dtor_nogc(free_op2.var); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; @@ -19028,9 +19028,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HAN } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_VAR, BP_VAR_RW TSRMLS_CC); zval_ptr_dtor_nogc(free_op2.var); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -19065,9 +19065,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_VAR_HANDLER(ZEND_OPCO zend_error_noreturn(E_ERROR, "Cannot use string offset as an array"); } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_VAR, BP_VAR_W TSRMLS_CC); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } zval_ptr_dtor_nogc(free_op2.var); if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; } else { @@ -19100,9 +19100,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_ } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_VAR, BP_VAR_UNSET TSRMLS_CC); zval_ptr_dtor_nogc(free_op2.var); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; if (UNEXPECTED(Z_TYPE_P(EX_VAR(opline->result.var)) == IS_STR_OFFSET)) { zend_error_noreturn(E_ERROR, "Cannot unset string offsets"); @@ -19200,9 +19200,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HAND zval_ptr_dtor_nogc(free_op2.var); //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; /* We are going to assign the result by reference */ @@ -19251,9 +19251,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HAN zval_ptr_dtor_nogc(free_op2.var); //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -19328,9 +19328,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_VAR_HANDLER(ZEND_OPCO zval_ptr_dtor_nogc(free_op2.var); //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -19365,9 +19365,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_ zval_ptr_dtor_nogc(free_op2.var); //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; retval_ptr = EX_VAR(opline->result.var); @@ -20907,9 +20907,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_H } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, NULL, IS_UNUSED, BP_VAR_W TSRMLS_CC); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; @@ -20949,9 +20949,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_ } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, NULL, IS_UNUSED, BP_VAR_RW TSRMLS_CC); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -20971,9 +20971,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_UNUSED_HANDLER(ZEND_O zend_error_noreturn(E_ERROR, "Cannot use string offset as an array"); } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, NULL, IS_UNUSED, BP_VAR_W TSRMLS_CC); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; } else { @@ -22348,9 +22348,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDL } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC), IS_CV, BP_VAR_W TSRMLS_CC); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; @@ -22390,9 +22390,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HAND } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC), IS_CV, BP_VAR_RW TSRMLS_CC); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -22427,9 +22427,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CV_HANDLER(ZEND_OPCOD zend_error_noreturn(E_ERROR, "Cannot use string offset as an array"); } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC), IS_CV, BP_VAR_W TSRMLS_CC); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; } else { @@ -22462,9 +22462,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_H } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC), IS_CV, BP_VAR_UNSET TSRMLS_CC); -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; if (UNEXPECTED(Z_TYPE_P(EX_VAR(opline->result.var)) == IS_STR_OFFSET)) { zend_error_noreturn(E_ERROR, "Cannot unset string offsets"); @@ -22562,9 +22562,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDL //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; /* We are going to assign the result by reference */ @@ -22613,9 +22613,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HAND //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -22690,9 +22690,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CV_HANDLER(ZEND_OPCOD //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -22727,9 +22727,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_H //??? } -//??? if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_VAR == IS_VAR && (free_op1.var != NULL) && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (free_op1.var) {zval_ptr_dtor_nogc(free_op1.var);}; retval_ptr = EX_VAR(opline->result.var); @@ -24268,9 +24268,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } /* We are going to assign the result by reference */ if (opline->extended_value & ZEND_FETCH_MAKE_REF) { @@ -24318,9 +24318,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCOD //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -24394,9 +24394,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CONST_HANDLER(ZEND //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -24431,9 +24431,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CONST_HANDLER(ZEND_OP //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } retval_ptr = EX_VAR(opline->result.var); if (Z_TYPE_P(retval_ptr) == IS_INDIRECT) { @@ -25638,9 +25638,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMP_HANDLER(ZEND_OPCODE_H zval_dtor(free_op2.var); //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } /* We are going to assign the result by reference */ if (opline->extended_value & ZEND_FETCH_MAKE_REF) { @@ -25688,9 +25688,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMP_HANDLER(ZEND_OPCODE_ zval_dtor(free_op2.var); //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -25764,9 +25764,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMP_HANDLER(ZEND_O zval_dtor(free_op2.var); //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -25801,9 +25801,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMP_HANDLER(ZEND_OPCO zval_dtor(free_op2.var); //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } retval_ptr = EX_VAR(opline->result.var); if (Z_TYPE_P(retval_ptr) == IS_INDIRECT) { @@ -26924,9 +26924,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_UNUSED_VAR_HANDLER(ZEND_OPCODE_H zval_ptr_dtor_nogc(free_op2.var); //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } /* We are going to assign the result by reference */ if (opline->extended_value & ZEND_FETCH_MAKE_REF) { @@ -26974,9 +26974,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_UNUSED_VAR_HANDLER(ZEND_OPCODE_ zval_ptr_dtor_nogc(free_op2.var); //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -27050,9 +27050,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_VAR_HANDLER(ZEND_O zval_ptr_dtor_nogc(free_op2.var); //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -27087,9 +27087,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_VAR_HANDLER(ZEND_OPCO zval_ptr_dtor_nogc(free_op2.var); //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } retval_ptr = EX_VAR(opline->result.var); if (Z_TYPE_P(retval_ptr) == IS_INDIRECT) { @@ -28610,9 +28610,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HA //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } /* We are going to assign the result by reference */ if (opline->extended_value & ZEND_FETCH_MAKE_REF) { @@ -28660,9 +28660,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_H //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -28736,9 +28736,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CV_HANDLER(ZEND_OP //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -28773,9 +28773,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CV_HANDLER(ZEND_OPCOD //??? } -//??? if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_UNUSED == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } retval_ptr = EX_VAR(opline->result.var); if (Z_TYPE_P(retval_ptr) == IS_INDIRECT) { @@ -31491,9 +31491,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HAN } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, opline->op2.zv, IS_CONST, BP_VAR_W TSRMLS_CC); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } /* We are going to assign the result by reference */ if (UNEXPECTED(opline->extended_value != 0)) { @@ -31531,9 +31531,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HA } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, opline->op2.zv, IS_CONST, BP_VAR_RW TSRMLS_CC); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -31568,9 +31568,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CONST_HANDLER(ZEND_OPC zend_error_noreturn(E_ERROR, "Cannot use string offset as an array"); } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, opline->op2.zv, IS_CONST, BP_VAR_W TSRMLS_CC); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } } else { @@ -31603,9 +31603,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_CV_CONST_HANDLER(ZEND_OPCODE } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, opline->op2.zv, IS_CONST, BP_VAR_UNSET TSRMLS_CC); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (UNEXPECTED(Z_TYPE_P(EX_VAR(opline->result.var)) == IS_STR_OFFSET)) { zend_error_noreturn(E_ERROR, "Cannot unset string offsets"); @@ -31702,9 +31702,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HAN //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } /* We are going to assign the result by reference */ if (opline->extended_value & ZEND_FETCH_MAKE_REF) { @@ -31752,9 +31752,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HA //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -31828,9 +31828,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CONST_HANDLER(ZEND_OPC //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -31865,9 +31865,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_CV_CONST_HANDLER(ZEND_OPCODE //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } retval_ptr = EX_VAR(opline->result.var); if (Z_TYPE_P(retval_ptr) == IS_INDIRECT) { @@ -33559,9 +33559,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDL } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_TMP_VAR, BP_VAR_W TSRMLS_CC); zval_dtor(free_op2.var); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } /* We are going to assign the result by reference */ if (UNEXPECTED(opline->extended_value != 0)) { @@ -33599,9 +33599,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HAND } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_TMP_VAR, BP_VAR_RW TSRMLS_CC); zval_dtor(free_op2.var); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -33636,9 +33636,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMP_HANDLER(ZEND_OPCOD zend_error_noreturn(E_ERROR, "Cannot use string offset as an array"); } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_TMP_VAR, BP_VAR_W TSRMLS_CC); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } zval_dtor(free_op2.var); } else { @@ -33671,9 +33671,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_H } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_TMP_VAR, BP_VAR_UNSET TSRMLS_CC); zval_dtor(free_op2.var); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (UNEXPECTED(Z_TYPE_P(EX_VAR(opline->result.var)) == IS_STR_OFFSET)) { zend_error_noreturn(E_ERROR, "Cannot unset string offsets"); @@ -33770,9 +33770,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDL zval_dtor(free_op2.var); //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } /* We are going to assign the result by reference */ if (opline->extended_value & ZEND_FETCH_MAKE_REF) { @@ -33820,9 +33820,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HAND zval_dtor(free_op2.var); //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -33896,9 +33896,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMP_HANDLER(ZEND_OPCOD zval_dtor(free_op2.var); //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -33933,9 +33933,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_H zval_dtor(free_op2.var); //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } retval_ptr = EX_VAR(opline->result.var); if (Z_TYPE_P(retval_ptr) == IS_INDIRECT) { @@ -35617,9 +35617,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDL } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_VAR, BP_VAR_W TSRMLS_CC); zval_ptr_dtor_nogc(free_op2.var); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } /* We are going to assign the result by reference */ if (UNEXPECTED(opline->extended_value != 0)) { @@ -35657,9 +35657,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HAND } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_VAR, BP_VAR_RW TSRMLS_CC); zval_ptr_dtor_nogc(free_op2.var); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -35694,9 +35694,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_VAR_HANDLER(ZEND_OPCOD zend_error_noreturn(E_ERROR, "Cannot use string offset as an array"); } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_VAR, BP_VAR_W TSRMLS_CC); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } zval_ptr_dtor_nogc(free_op2.var); } else { @@ -35729,9 +35729,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_H } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC), IS_VAR, BP_VAR_UNSET TSRMLS_CC); zval_ptr_dtor_nogc(free_op2.var); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (UNEXPECTED(Z_TYPE_P(EX_VAR(opline->result.var)) == IS_STR_OFFSET)) { zend_error_noreturn(E_ERROR, "Cannot unset string offsets"); @@ -35828,9 +35828,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDL zval_ptr_dtor_nogc(free_op2.var); //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } /* We are going to assign the result by reference */ if (opline->extended_value & ZEND_FETCH_MAKE_REF) { @@ -35878,9 +35878,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HAND zval_ptr_dtor_nogc(free_op2.var); //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -35954,9 +35954,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_VAR_HANDLER(ZEND_OPCOD zval_ptr_dtor_nogc(free_op2.var); //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -35991,9 +35991,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_H zval_ptr_dtor_nogc(free_op2.var); //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } retval_ptr = EX_VAR(opline->result.var); if (Z_TYPE_P(retval_ptr) == IS_INDIRECT) { @@ -37412,9 +37412,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HA } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, NULL, IS_UNUSED, BP_VAR_W TSRMLS_CC); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } /* We are going to assign the result by reference */ if (UNEXPECTED(opline->extended_value != 0)) { @@ -37452,9 +37452,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_H } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, NULL, IS_UNUSED, BP_VAR_RW TSRMLS_CC); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -37474,9 +37474,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_UNUSED_HANDLER(ZEND_OP zend_error_noreturn(E_ERROR, "Cannot use string offset as an array"); } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, NULL, IS_UNUSED, BP_VAR_W TSRMLS_CC); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } } else { @@ -38719,9 +38719,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLE } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC), IS_CV, BP_VAR_W TSRMLS_CC); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } /* We are going to assign the result by reference */ if (UNEXPECTED(opline->extended_value != 0)) { @@ -38759,9 +38759,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDL } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC), IS_CV, BP_VAR_RW TSRMLS_CC); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -38796,9 +38796,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CV_HANDLER(ZEND_OPCODE zend_error_noreturn(E_ERROR, "Cannot use string offset as an array"); } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC), IS_CV, BP_VAR_W TSRMLS_CC); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } } else { @@ -38831,9 +38831,9 @@ static int ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HA } zend_fetch_dimension_address(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC), IS_CV, BP_VAR_UNSET TSRMLS_CC); -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } if (UNEXPECTED(Z_TYPE_P(EX_VAR(opline->result.var)) == IS_STR_OFFSET)) { zend_error_noreturn(E_ERROR, "Cannot unset string offsets"); @@ -38930,9 +38930,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLE //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } /* We are going to assign the result by reference */ if (opline->extended_value & ZEND_FETCH_MAKE_REF) { @@ -38980,9 +38980,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDL //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -39056,9 +39056,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CV_HANDLER(ZEND_OPCODE //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } CHECK_EXCEPTION(); ZEND_VM_NEXT_OPCODE(); @@ -39093,9 +39093,9 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HA //??? } -//??? if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { -//??? EXTRACT_ZVAL_PTR(&EX_T(opline->result.var)); -//??? } + if (IS_CV == IS_VAR && 0 && READY_TO_DESTROY(free_op1.var)) { + EXTRACT_ZVAL_PTR(EX_VAR(opline->result.var)); + } retval_ptr = EX_VAR(opline->result.var); if (Z_TYPE_P(retval_ptr) == IS_INDIRECT) { |
