switch (brk_opline->opcode) {
case ZEND_SWITCH_FREE:
if (!(brk_opline->extended_value & EXT_TYPE_FREE_ON_RETURN)) {
- zend_switch_free(&EX_T(brk_opline->op1.var), brk_opline->extended_value TSRMLS_CC);
+ zval_ptr_dtor(&EX_T(brk_opline->op1.var).var.ptr);
}
break;
case ZEND_FREE:
USE_OPLINE
SAVE_OPLINE();
- zend_switch_free(&EX_T(opline->op1.var), opline->extended_value TSRMLS_CC);
+ zval_ptr_dtor(&EX_T(opline->op1.var).var.ptr);
CHECK_EXCEPTION();
ZEND_VM_NEXT_OPCODE();
}
if (iter && EXPECTED(EG(exception) == NULL)) {
array_ptr = zend_iterator_wrap(iter TSRMLS_CC);
} else {
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
- FREE_OP1_VAR_PTR();
- } else {
- FREE_OP1_IF_VAR();
- }
+ FREE_OP1_IF_VAR();
if (!EG(exception)) {
zend_throw_exception_ex(NULL, 0 TSRMLS_CC, "Object of type %s did not create an Iterator", ce->name);
}
}
}
- PZVAL_LOCK(array_ptr);
AI_SET_PTR(&EX_T(opline->result.var), array_ptr);
if (iter) {
if (iter->funcs->rewind) {
iter->funcs->rewind(iter TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array_ptr);
zval_ptr_dtor(&array_ptr);
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
- FREE_OP1_VAR_PTR();
- } else {
- FREE_OP1_IF_VAR();
- }
+ FREE_OP1_IF_VAR();
HANDLE_EXCEPTION();
}
}
is_empty = iter->funcs->valid(iter TSRMLS_CC) != SUCCESS;
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array_ptr);
zval_ptr_dtor(&array_ptr);
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
- FREE_OP1_VAR_PTR();
- } else {
- FREE_OP1_IF_VAR();
- }
+ FREE_OP1_IF_VAR();
HANDLE_EXCEPTION();
}
iter->index = -1; /* will be set to 0 before using next handler */
is_empty = 1;
}
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
- FREE_OP1_VAR_PTR();
- } else {
- FREE_OP1_IF_VAR();
- }
+ FREE_OP1_IF_VAR();
if (is_empty) {
ZEND_VM_JMP(EX(op_array)->opcodes+opline->op2.opline_num);
} else {
* In case that ever happens we need an additional flag. */
iter->funcs->move_forward(iter TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array);
zval_ptr_dtor(&array);
HANDLE_EXCEPTION();
}
if (!iter || (iter->index > 0 && iter->funcs->valid(iter TSRMLS_CC) == FAILURE)) {
/* reached end of iteration */
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array);
zval_ptr_dtor(&array);
HANDLE_EXCEPTION();
}
}
iter->funcs->get_current_data(iter, &value TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array);
zval_ptr_dtor(&array);
HANDLE_EXCEPTION();
}
if (iter->funcs->get_current_key) {
key_type = iter->funcs->get_current_key(iter, &str_key, &str_key_len, &int_key TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array);
zval_ptr_dtor(&array);
HANDLE_EXCEPTION();
}
switch (brk_opline->opcode) {
case ZEND_SWITCH_FREE:
if (!(brk_opline->extended_value & EXT_TYPE_FREE_ON_RETURN)) {
- zend_switch_free(&EX_T(brk_opline->op1.var), brk_opline->extended_value TSRMLS_CC);
+ zval_ptr_dtor(&EX_T(brk_opline->op1.var).var.ptr);
}
break;
case ZEND_FREE:
switch (brk_opline->opcode) {
case ZEND_SWITCH_FREE:
if (!(brk_opline->extended_value & EXT_TYPE_FREE_ON_RETURN)) {
- zend_switch_free(&EX_T(brk_opline->op1.var), brk_opline->extended_value TSRMLS_CC);
+ zval_ptr_dtor(&EX_T(brk_opline->op1.var).var.ptr);
}
break;
case ZEND_FREE:
switch (brk_opline->opcode) {
case ZEND_SWITCH_FREE:
if (!(brk_opline->extended_value & EXT_TYPE_FREE_ON_RETURN)) {
- zend_switch_free(&EX_T(brk_opline->op1.var), brk_opline->extended_value TSRMLS_CC);
+ zval_ptr_dtor(&EX_T(brk_opline->op1.var).var.ptr);
}
break;
case ZEND_FREE:
if (iter && EXPECTED(EG(exception) == NULL)) {
array_ptr = zend_iterator_wrap(iter TSRMLS_CC);
} else {
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
- } else {
-
- }
if (!EG(exception)) {
zend_throw_exception_ex(NULL, 0 TSRMLS_CC, "Object of type %s did not create an Iterator", ce->name);
}
}
}
- PZVAL_LOCK(array_ptr);
AI_SET_PTR(&EX_T(opline->result.var), array_ptr);
if (iter) {
if (iter->funcs->rewind) {
iter->funcs->rewind(iter TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array_ptr);
zval_ptr_dtor(&array_ptr);
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
-
- } else {
- }
HANDLE_EXCEPTION();
}
}
is_empty = iter->funcs->valid(iter TSRMLS_CC) != SUCCESS;
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array_ptr);
zval_ptr_dtor(&array_ptr);
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
-
- } else {
- }
HANDLE_EXCEPTION();
}
iter->index = -1; /* will be set to 0 before using next handler */
is_empty = 1;
}
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
-
- } else {
-
- }
if (is_empty) {
ZEND_VM_JMP(EX(op_array)->opcodes+opline->op2.opline_num);
} else {
if (iter && EXPECTED(EG(exception) == NULL)) {
array_ptr = zend_iterator_wrap(iter TSRMLS_CC);
} else {
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
-
- } else {
- }
if (!EG(exception)) {
zend_throw_exception_ex(NULL, 0 TSRMLS_CC, "Object of type %s did not create an Iterator", ce->name);
}
}
}
- PZVAL_LOCK(array_ptr);
AI_SET_PTR(&EX_T(opline->result.var), array_ptr);
if (iter) {
if (iter->funcs->rewind) {
iter->funcs->rewind(iter TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array_ptr);
zval_ptr_dtor(&array_ptr);
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
-
- } else {
- }
HANDLE_EXCEPTION();
}
}
is_empty = iter->funcs->valid(iter TSRMLS_CC) != SUCCESS;
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array_ptr);
zval_ptr_dtor(&array_ptr);
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
- } else {
-
- }
HANDLE_EXCEPTION();
}
iter->index = -1; /* will be set to 0 before using next handler */
is_empty = 1;
}
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
-
- } else {
-
- }
if (is_empty) {
ZEND_VM_JMP(EX(op_array)->opcodes+opline->op2.opline_num);
} else {
USE_OPLINE
SAVE_OPLINE();
- zend_switch_free(&EX_T(opline->op1.var), opline->extended_value TSRMLS_CC);
+ zval_ptr_dtor(&EX_T(opline->op1.var).var.ptr);
CHECK_EXCEPTION();
ZEND_VM_NEXT_OPCODE();
}
if (iter && EXPECTED(EG(exception) == NULL)) {
array_ptr = zend_iterator_wrap(iter TSRMLS_CC);
} else {
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
- if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
- } else {
- if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
- }
+ if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
if (!EG(exception)) {
zend_throw_exception_ex(NULL, 0 TSRMLS_CC, "Object of type %s did not create an Iterator", ce->name);
}
}
}
- PZVAL_LOCK(array_ptr);
AI_SET_PTR(&EX_T(opline->result.var), array_ptr);
if (iter) {
if (iter->funcs->rewind) {
iter->funcs->rewind(iter TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array_ptr);
zval_ptr_dtor(&array_ptr);
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
- if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
- } else {
- if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
- }
+ if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
HANDLE_EXCEPTION();
}
}
is_empty = iter->funcs->valid(iter TSRMLS_CC) != SUCCESS;
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array_ptr);
zval_ptr_dtor(&array_ptr);
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
- if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
- } else {
- if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
- }
+ if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
HANDLE_EXCEPTION();
}
iter->index = -1; /* will be set to 0 before using next handler */
is_empty = 1;
}
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
- if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
- } else {
- if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
- }
+ if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
if (is_empty) {
ZEND_VM_JMP(EX(op_array)->opcodes+opline->op2.opline_num);
} else {
* In case that ever happens we need an additional flag. */
iter->funcs->move_forward(iter TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array);
zval_ptr_dtor(&array);
HANDLE_EXCEPTION();
}
if (!iter || (iter->index > 0 && iter->funcs->valid(iter TSRMLS_CC) == FAILURE)) {
/* reached end of iteration */
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array);
zval_ptr_dtor(&array);
HANDLE_EXCEPTION();
}
}
iter->funcs->get_current_data(iter, &value TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array);
zval_ptr_dtor(&array);
HANDLE_EXCEPTION();
}
if (iter->funcs->get_current_key) {
key_type = iter->funcs->get_current_key(iter, &str_key, &str_key_len, &int_key TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array);
zval_ptr_dtor(&array);
HANDLE_EXCEPTION();
}
if (iter && EXPECTED(EG(exception) == NULL)) {
array_ptr = zend_iterator_wrap(iter TSRMLS_CC);
} else {
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
-
- } else {
- }
if (!EG(exception)) {
zend_throw_exception_ex(NULL, 0 TSRMLS_CC, "Object of type %s did not create an Iterator", ce->name);
}
}
}
- PZVAL_LOCK(array_ptr);
AI_SET_PTR(&EX_T(opline->result.var), array_ptr);
if (iter) {
if (iter->funcs->rewind) {
iter->funcs->rewind(iter TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array_ptr);
zval_ptr_dtor(&array_ptr);
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
- } else {
-
- }
HANDLE_EXCEPTION();
}
}
is_empty = iter->funcs->valid(iter TSRMLS_CC) != SUCCESS;
if (UNEXPECTED(EG(exception) != NULL)) {
- Z_DELREF_P(array_ptr);
zval_ptr_dtor(&array_ptr);
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
- } else {
-
- }
HANDLE_EXCEPTION();
}
iter->index = -1; /* will be set to 0 before using next handler */
is_empty = 1;
}
- if (opline->extended_value & ZEND_FE_RESET_VARIABLE) {
-
- } else {
-
- }
if (is_empty) {
ZEND_VM_JMP(EX(op_array)->opcodes+opline->op2.opline_num);
} else {