We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
In the following example, cleanup1() does not get called.
cleanup1()
%new-style %enable-all-warnings %require-types %strict-args sub cleanup1() { printf("cleanup1\n"); } sub cleanup2() { printf("cleanup2\n"); throw "unexpected"; } on_error cleanup1(); on_error cleanup2(); throw "error";
But it works if the on_error statements are in different scopes:
on_error
on_error cleanup1(); { on_error cleanup2(); throw "error"; }
The text was updated successfully, but these errors were encountered:
another example:
sub cleanup() { printf("cleanup\n"); } on_exit cleanup(); on_exit throw True;
the cleanup() call is never executed although it should be
Sorry, something went wrong.
refs #380 ensure that all on_exit and on_error statements are execute…
751d3c0
…d even if an exception is raised in another queued on_* block, added tests + relnotes
refs #380 fixed the test, updated comments
18fd863
Merge pull request #450 from qorelanguage/bugfix/380_on_exit_error_fixes
d50964b
No branches or pull requests
In the following example,
cleanup1()
does not get called.But it works if the
on_error
statements are in different scopes:The text was updated successfully, but these errors were encountered: