1
0
mirror of https://github.com/php/php-src.git synced 2026-04-12 10:33:11 +02:00

ZEND_CATCH support for IS_INDIRECT

This commit is contained in:
Dmitry Stogov
2014-02-24 12:29:35 +04:00
parent f1dcbf4750
commit 074391de88
2 changed files with 4 additions and 4 deletions

View File

@@ -2944,8 +2944,8 @@ ZEND_VM_HANDLER(107, ZEND_CATCH, CONST, CV)
ZVAL_OBJ(EX_VAR_NUM(opline->op2.var), EG(exception));
if (EG(active_symbol_table)) {
zend_string *cv = CV_DEF_OF(opline->op2.var);
// TODO: indirect???
zend_hash_update(EG(active_symbol_table), cv, EX_VAR_NUM(opline->op2.var));
zval *zv = zend_hash_update(EG(active_symbol_table), cv, EX_VAR_NUM(opline->op2.var));
ZVAL_INDIRECT(EX_VAR_NUM(opline->op2.var), zv);
}
if (UNEXPECTED(EG(exception) != exception)) {
EG(exception)->gc.refcount++;

View File

@@ -7100,8 +7100,8 @@ static int ZEND_FASTCALL ZEND_CATCH_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_A
ZVAL_OBJ(EX_VAR_NUM(opline->op2.var), EG(exception));
if (EG(active_symbol_table)) {
zend_string *cv = CV_DEF_OF(opline->op2.var);
// TODO: indirect???
zend_hash_update(EG(active_symbol_table), cv, EX_VAR_NUM(opline->op2.var));
zval *zv = zend_hash_update(EG(active_symbol_table), cv, EX_VAR_NUM(opline->op2.var));
ZVAL_INDIRECT(EX_VAR_NUM(opline->op2.var), zv);
}
if (UNEXPECTED(EG(exception) != exception)) {
EG(exception)->gc.refcount++;