summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2020-04-17 14:55:14 +0300
committerDmitry Stogov <dmitry@zend.com>2020-04-17 14:55:14 +0300
commitd31ccb5fc8a0f6f5fded085ee170c8bd99eb83e7 (patch)
tree9245189e35595f1ed16733456b226e22894835e1
parenta1c1736bfb88d006542dc9bcc10d7101617517a6 (diff)
downloadphp-git-d31ccb5fc8a0f6f5fded085ee170c8bd99eb83e7.tar.gz
zend_timeout() may access EX(opline)
-rw-r--r--Zend/zend_vm_def.h2
-rw-r--r--Zend/zend_vm_execute.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h
index fbd79019e7..9c46476b6a 100644
--- a/Zend/zend_vm_def.h
+++ b/Zend/zend_vm_def.h
@@ -8879,10 +8879,10 @@ ZEND_VM_DEFINE_OP(137, ZEND_OP_DATA);
ZEND_VM_HELPER(zend_interrupt_helper, ANY, ANY)
{
EG(vm_interrupt) = 0;
+ SAVE_OPLINE();
if (EG(timed_out)) {
zend_timeout(0);
} else if (zend_interrupt_function) {
- SAVE_OPLINE();
zend_interrupt_function(execute_data);
ZEND_VM_ENTER();
}
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h
index 33518478c3..a84cfe3d4b 100644
--- a/Zend/zend_vm_execute.h
+++ b/Zend/zend_vm_execute.h
@@ -2054,10 +2054,10 @@ static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMP_FORWARD_SPEC_H
static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_interrupt_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS)
{
EG(vm_interrupt) = 0;
+ SAVE_OPLINE();
if (EG(timed_out)) {
zend_timeout(0);
} else if (zend_interrupt_function) {
- SAVE_OPLINE();
zend_interrupt_function(execute_data);
ZEND_VM_ENTER();
}