]> granicus.if.org Git - php/commitdiff
Fix CALL_TRAMPOLINE without global regs
authorNikita Popov <nikic@php.net>
Sat, 18 Apr 2015 13:43:14 +0000 (15:43 +0200)
committerNikita Popov <nikic@php.net>
Sat, 18 Apr 2015 13:44:04 +0000 (15:44 +0200)
The opline needs to be loaded here in any case. However
LOAD_OPLINE() is a no-op if global VM registers are not used.

Zend/zend_vm_def.h
Zend/zend_vm_execute.h

index fa1a187f148f025448a2914b596058aef0ebabd3..811de533c52da0ce30b6155c00e79f63c2a051ee 100644 (file)
@@ -7857,7 +7857,7 @@ ZEND_VM_C_LABEL(call_trampoline_end):
                ZEND_VM_RETURN();
        }
 
-       LOAD_OPLINE();
+       opline = execute_data->opline;
 
        if (object) {
                OBJ_RELEASE(object);
index f991caf834d93f8e3c643d594f597d788442cdd2..7775c83894fca4ce2966d38542366e22b143b19d 100644 (file)
@@ -1893,7 +1893,7 @@ call_trampoline_end:
                ZEND_VM_RETURN();
        }
 
-       LOAD_OPLINE();
+       opline = execute_data->opline;
 
        if (object) {
                OBJ_RELEASE(object);