Bug 305677
| Summary: | Temporarily revert assertion in VMTraps::deferTerminationSlow() to a Debug ASSERT. | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Mark Lam <mark.lam> |
| Component: | New Bugs | Assignee: | Mark Lam <mark.lam> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Mark Lam
There are places in the code that are still not handling TerminationExceptions correctly, and re-entering the VM after termination. As a result, they are crashing over this RELEASE_ASSERT which was hardened from a Debug ASSERT in 298039@main. If the client re-enters the VM while the TerminationException is still in effect, without this RELEASE_ASSERT, we'll eventually exit again at the next exception check. So, the issue should be benign. This patch will temporarily revert the RELEASE_ASSERT back to a Debug ASSERT to alleviate the crashes.
We still want to fix all the places that did the illegal re-entry to make the code more sane and easy to reason about, but that can be done later. We can re-enable the RELEASE_ASSERT after that.
rdar://167947484
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Mark Lam
*** Bug 305678 has been marked as a duplicate of this bug. ***
Mark Lam
Pull request: https://github.com/WebKit/WebKit/pull/56747
EWS
Committed 305748@main (e6eb222f8fed): <https://commits.webkit.org/305748@main>
Reviewed commits have been landed. Closing PR #56747 and removing active labels.