mirror of
https://github.com/php/php-src.git
synced 2026-04-14 11:32:11 +02:00
Don't record "fake" closures
This commit is contained in:
@@ -483,7 +483,7 @@ static int zend_jit_trace_record_fake_init_call_ex(zend_execute_data *call, zend
|
||||
&& (func->op_array.fn_flags & ZEND_ACC_CLOSURE)) {
|
||||
jit_extension =
|
||||
(zend_jit_op_array_trace_extension*)ZEND_FUNC_INFO(&func->op_array);
|
||||
if (UNEXPECTED(!jit_extension)) {
|
||||
if (UNEXPECTED(!jit_extension || (func->op_array.fn_flags & ZEND_ACC_FAKE_CLOSURE))) {
|
||||
return -1;
|
||||
}
|
||||
func = (zend_function*)jit_extension->op_array;
|
||||
@@ -858,8 +858,8 @@ zend_jit_trace_stop ZEND_FASTCALL zend_jit_trace_execute(zend_execute_data *ex,
|
||||
&& (func->op_array.fn_flags & ZEND_ACC_CLOSURE)) {
|
||||
jit_extension =
|
||||
(zend_jit_op_array_trace_extension*)ZEND_FUNC_INFO(&func->op_array);
|
||||
if (UNEXPECTED(!jit_extension)) {
|
||||
stop = ZEND_JIT_TRACE_STOP_BAD_FUNC;
|
||||
if (UNEXPECTED(!jit_extension) || (func->op_array.fn_flags & ZEND_ACC_FAKE_CLOSURE)) {
|
||||
stop = ZEND_JIT_TRACE_STOP_INTERPRETER;
|
||||
break;
|
||||
}
|
||||
func = (zend_function*)jit_extension->op_array;
|
||||
|
||||
Reference in New Issue
Block a user