https://bugzilla.wikimedia.org/show_bug.cgi?id=71174

--- Comment #5 from Tim Starling <[email protected]> ---
I think the correct thing to do is to clear EG(exception) at the end of
zend_wrap_func(). In Zend, EG(exception) is an "active" exception, i.e. prior
to being handled by the VM. EG(exception) is cleared by the ZEND_CATCH opcode.
So it makes sense to clear it before returning to HHVM's VM.

In a recursive call into zend_wrap_func() via zend_call_function(), the Zend
exception will be converted to a C++ exception and back again, so there will
only be one sort of exception active at any one time. Whereas in the current
situation, after the return from zend_wrap_func(), we have both a Zend
exception and a C++ exception being active.

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are on the CC list for the bug.
_______________________________________________
Wikibugs-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to