Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e6eb222f8fedb5bb82a458c47560f303832a4e43
      
https://github.com/WebKit/WebKit/commit/e6eb222f8fedb5bb82a458c47560f303832a4e43
  Author: Mark Lam <[email protected]>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M Source/JavaScriptCore/runtime/VMTraps.cpp

  Log Message:
  -----------
  Temporarily revert assertion in VMTraps::deferTerminationSlow() to a Debug 
ASSERT.
https://bugs.webkit.org/show_bug.cgi?id=305677
rdar://167947484

Reviewed by Marcus Plutowski.

There are places in the code that are still not handling TerminationExceptions 
correctly,
and are 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.

No new test because this is just reverting to previous behavior.

* Source/JavaScriptCore/runtime/VMTraps.cpp:
(JSC::VMTraps::deferTerminationSlow):

Canonical link: https://commits.webkit.org/305748@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to