]> granicus.if.org Git - php/commitdiff
Remove bogus exception_save() from FETCH_CLASS
authorNikita Popov <nikic@php.net>
Mon, 20 Jul 2015 20:56:51 +0000 (22:56 +0200)
committerNikita Popov <nikic@php.net>
Mon, 20 Jul 2015 20:56:51 +0000 (22:56 +0200)
There can't be no exception at the start of the op. Also would miss
the corresponding exception_restore().

Zend/zend_vm_def.h
Zend/zend_vm_execute.h

index bbeb2fa158f20a507c481acc708c01cae5f9fff2..8a6cd782feb1b18343e2f70ad7833c27bf1c1eb3 100644 (file)
@@ -2826,9 +2826,6 @@ ZEND_VM_HANDLER(109, ZEND_FETCH_CLASS, ANY, CONST|TMPVAR|UNUSED|CV)
        USE_OPLINE
 
        SAVE_OPLINE();
-       if (EG(exception)) {
-               zend_exception_save();
-       }
        if (OP2_TYPE == IS_UNUSED) {
                Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(NULL, opline->extended_value);
                ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
index 0259a3c8fae712dde1ebaf2238747117685c64e3..2be1016018d751ffdb39240ae1375944f0e75801 100644 (file)
@@ -1858,9 +1858,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_SPEC_CONST_HANDLER
        USE_OPLINE
 
        SAVE_OPLINE();
-       if (EG(exception)) {
-               zend_exception_save();
-       }
        if (IS_CONST == IS_UNUSED) {
                Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(NULL, opline->extended_value);
                ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
@@ -2261,9 +2258,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_SPEC_UNUSED_HANDLE
        USE_OPLINE
 
        SAVE_OPLINE();
-       if (EG(exception)) {
-               zend_exception_save();
-       }
        if (IS_UNUSED == IS_UNUSED) {
                Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(NULL, opline->extended_value);
                ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
@@ -2305,9 +2299,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_SPEC_CV_HANDLER(ZE
        USE_OPLINE
 
        SAVE_OPLINE();
-       if (EG(exception)) {
-               zend_exception_save();
-       }
        if (IS_CV == IS_UNUSED) {
                Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(NULL, opline->extended_value);
                ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
@@ -2553,9 +2544,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_SPEC_TMPVAR_HANDLE
        USE_OPLINE
 
        SAVE_OPLINE();
-       if (EG(exception)) {
-               zend_exception_save();
-       }
        if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) {
                Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(NULL, opline->extended_value);
                ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();