Please sign in to comment.
[GH #816] Check if you're dying by interp->final_exception
In a branch of mod_parrot designed to ease the writing of exception handlers, I noted that the API cannot catch exceptions twice. On throwing an exception and the interpreter 'dies', it returns to the api call via longjmp(), and sets some values upon the interpreter object. Based upon these values, the api call returns 0, upon which the exception is retrieved and inspected. Best example: show_last_error_and_exit. We should just check for the last_exception being PMCNULL; if so you can jump out (we are already dying) and if not set already_dying.
- Loading branch information...