summaryrefslogtreecommitdiff
path: root/Zend/zend_execute.c
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2020-09-18 11:02:51 +0200
committerNikita Popov <nikita.ppv@gmail.com>2020-09-18 11:03:08 +0200
commit34bb5ba2ea1db1e4b4bad991fdcf436c688dd54d (patch)
treea7eda678e4089680ef6ec5b329cb860edcbe8c07 /Zend/zend_execute.c
parent9e94bcfdbc8e4b0be0273896b4ea8fb2efdc0833 (diff)
downloadphp-git-34bb5ba2ea1db1e4b4bad991fdcf436c688dd54d.tar.gz
Remove support for EXT_NOP
This is an annoying edge case that regularly gets broken. As we're not aware of significant users of this API, and there are other ways to hook this, remove support for EXT_NOP.
Diffstat (limited to 'Zend/zend_execute.c')
-rw-r--r--Zend/zend_execute.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c
index 22afd49c2e..e2e5aa8391 100644
--- a/Zend/zend_execute.c
+++ b/Zend/zend_execute.c
@@ -4454,14 +4454,13 @@ ZEND_API zend_result ZEND_FASTCALL zend_handle_undef_args(zend_execute_data *cal
if (fbc->type == ZEND_USER_FUNCTION) {
zend_op_array *op_array = &fbc->op_array;
uint32_t num_args = ZEND_CALL_NUM_ARGS(call);
- uint32_t opline_offset = op_array->opcodes[0].opcode == ZEND_EXT_NOP;
for (uint32_t i = 0; i < num_args; i++) {
zval *arg = ZEND_CALL_VAR_NUM(call, i);
if (!Z_ISUNDEF_P(arg)) {
continue;
}
- zend_op *opline = &op_array->opcodes[i + opline_offset];
+ zend_op *opline = &op_array->opcodes[i];
if (EXPECTED(opline->opcode == ZEND_RECV_INIT)) {
zval *default_value = RT_CONSTANT(opline, opline->op2);
if (Z_OPT_TYPE_P(default_value) == IS_CONSTANT_AST) {