diff options
author | Dmitry Stogov <dmitry@zend.com> | 2015-10-26 16:01:20 +0300 |
---|---|---|
committer | Anatol Belski <ab@php.net> | 2015-10-27 02:23:49 +0100 |
commit | 579f10c0a1bf0331256ba7b12b8a9dd78c14ef1f (patch) | |
tree | c067df7a2a1f5281a22a450c712c5c62eaf53dd6 | |
parent | c031d6de68ad7ffc815651a6ac851b0185b11670 (diff) | |
download | php-git-579f10c0a1bf0331256ba7b12b8a9dd78c14ef1f.tar.gz |
Fixed inconsistent exception handling (uopz/tests/006.phpt was failed when PHP build with --disable-gcc-global-regs).
-rw-r--r-- | Zend/zend_vm_def.h | 3 | ||||
-rw-r--r-- | Zend/zend_vm_execute.h | 3 |
2 files changed, 2 insertions, 4 deletions
diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h index 4d5c2578af..ad6dc58ec9 100644 --- a/Zend/zend_vm_def.h +++ b/Zend/zend_vm_def.h @@ -7170,7 +7170,7 @@ ZEND_VM_HANDLER(150, ZEND_USER_OPCODE, ANY, ANY) SAVE_OPLINE(); ret = zend_user_opcode_handlers[opline->opcode](execute_data); - LOAD_OPLINE(); + opline = EX(opline); switch (ret) { case ZEND_USER_OPCODE_CONTINUE: @@ -7186,7 +7186,6 @@ ZEND_VM_HANDLER(150, ZEND_USER_OPCODE, ANY, ANY) case ZEND_USER_OPCODE_ENTER: ZEND_VM_ENTER(); case ZEND_USER_OPCODE_LEAVE: - LOAD_OPLINE(); ZEND_VM_LEAVE(); case ZEND_USER_OPCODE_DISPATCH: ZEND_VM_DISPATCH(opline->opcode, opline); diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h index e7257f1186..97e08b75f9 100644 --- a/Zend/zend_vm_execute.h +++ b/Zend/zend_vm_execute.h @@ -1566,7 +1566,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_USER_OPCODE_SPEC_HANDLER(ZEND_ SAVE_OPLINE(); ret = zend_user_opcode_handlers[opline->opcode](execute_data); - LOAD_OPLINE(); + opline = EX(opline); switch (ret) { case ZEND_USER_OPCODE_CONTINUE: @@ -1582,7 +1582,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_USER_OPCODE_SPEC_HANDLER(ZEND_ case ZEND_USER_OPCODE_ENTER: ZEND_VM_ENTER(); case ZEND_USER_OPCODE_LEAVE: - LOAD_OPLINE(); ZEND_VM_LEAVE(); case ZEND_USER_OPCODE_DISPATCH: ZEND_VM_DISPATCH(opline->opcode, opline); |