From: Xinchen Hui Date: Wed, 4 Mar 2015 09:17:48 +0000 (+0800) Subject: Fixed segfault X-Git-Tag: PRE_PHP7_EREG_MYSQL_REMOVALS~9 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c16dcd3a8eff73c5ff8f1022cb7d693bd04845c7;p=php Fixed segfault --- diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h index 7936af95b2..d0d6079b39 100644 --- a/Zend/zend_vm_def.h +++ b/Zend/zend_vm_def.h @@ -1907,7 +1907,7 @@ ZEND_VM_HELPER(zend_leave_helper, ANY, ANY) zend_vm_stack_free_extra_args(execute_data); old_execute_data = execute_data; execute_data = EG(current_execute_data) = EX(prev_execute_data); - if (UNEXPECTED((old_execute_data->func->op_array.fn_flags & ZEND_ACC_CLOSURE) != 0) && EX(func)->op_array.prototype) { + if (UNEXPECTED((old_execute_data->func->op_array.fn_flags & ZEND_ACC_CLOSURE) != 0) && old_execute_data->func->op_array.prototype) { OBJ_RELEASE((zend_object*)old_execute_data->func->op_array.prototype); } object = Z_OBJ(old_execute_data->This); diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h index a850098865..85ed9a50b5 100644 --- a/Zend/zend_vm_execute.h +++ b/Zend/zend_vm_execute.h @@ -396,7 +396,7 @@ static int ZEND_FASTCALL zend_leave_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS) zend_vm_stack_free_extra_args(execute_data); old_execute_data = execute_data; execute_data = EG(current_execute_data) = EX(prev_execute_data); - if (UNEXPECTED((old_execute_data->func->op_array.fn_flags & ZEND_ACC_CLOSURE) != 0) && EX(func)->op_array.prototype) { + if (UNEXPECTED((old_execute_data->func->op_array.fn_flags & ZEND_ACC_CLOSURE) != 0) && old_execute_data->func->op_array.prototype) { OBJ_RELEASE((zend_object*)old_execute_data->func->op_array.prototype); } object = Z_OBJ(old_execute_data->This);