summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Zend/zend_execute.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c
index d5de1b9f87..7b5ddd34a5 100644
--- a/Zend/zend_execute.c
+++ b/Zend/zend_execute.c
@@ -1236,16 +1236,14 @@ binary_assign_op_addr: {
zval tmp;
if ((opline>EG(active_op_array)->opcodes)
- && (opline-1)->opcode == ZEND_JMP_NO_CTOR) {
+ && opline->op1.op_type==IS_VAR
+ && opline->op1.u.EA.type & EXT_TYPE_UNUSED) {
/* constructor call */
- if (opline->op1.op_type==IS_VAR) {
- EG(AiCount)++;
- }
+ EG(AiCount)++; /* for op1 */
if (opline->op2.op_type==IS_VAR) {
EG(AiCount)++;
}
}
-
function_name = get_zval_ptr(&opline->op2, Ts, &free_op2, BP_VAR_R);
tmp = *function_name;