mirror of
https://github.com/php/php-src.git
synced 2025-08-15 21:48:51 +02:00
Changed CATCH instruction format (extended_value moved into op2, op2 into result, result into extended_value)
This commit is contained in:
parent
3c6e1c2b81
commit
ba298725d1
19 changed files with 154 additions and 105 deletions
|
@ -760,9 +760,9 @@ PHPDBG_API zend_bool phpdbg_check_caught_ex(zend_execute_data *execute_data, zen
|
|||
return 1;
|
||||
}
|
||||
|
||||
do {
|
||||
cur = &op_array->opcodes[catch];
|
||||
while (1) {
|
||||
zend_class_entry *ce;
|
||||
cur = &op_array->opcodes[catch];
|
||||
|
||||
if (!(ce = CACHED_PTR(Z_CACHE_SLOT_P(RT_CONSTANT(cur, cur->op1))))) {
|
||||
ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(cur, cur->op1)), RT_CONSTANT(cur, cur->op1) + 1, ZEND_FETCH_CLASS_NO_AUTOLOAD);
|
||||
|
@ -773,8 +773,12 @@ PHPDBG_API zend_bool phpdbg_check_caught_ex(zend_execute_data *execute_data, zen
|
|||
return 1;
|
||||
}
|
||||
|
||||
catch += cur->extended_value / sizeof(zend_op);
|
||||
} while (!cur->result.num);
|
||||
if (cur->extended_value == ZEND_LAST_CATCH) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
cur = OP_JMP_ADDR(cur, cur->op2);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue