[webkit-changes] [WebKit/WebKit] 49e3e2: Use of Options::enableStrongRefTracker() breaks te...

Commit Queue noreply at github.com
Wed Oct 16 21:06:57 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 49e3e247239519e79fed18eda8016a3464d6830e
      https://github.com/WebKit/WebKit/commit/49e3e247239519e79fed18eda8016a3464d6830e
  Author: Mark Lam <mark.lam at apple.com>
  Date:   2024-10-16 (Wed, 16 Oct 2024)

  Changed paths:
    M Source/JavaScriptCore/heap/Strong.h
    M Source/JavaScriptCore/heap/StrongInlines.h
    M Source/WTF/wtf/RefTrackerMixin.h

  Log Message:
  -----------
  Use of Options::enableStrongRefTracker() breaks testapi in the Debug build.
https://bugs.webkit.org/show_bug.cgi?id=281626
rdar://138066602

Reviewed by David Degazio.

284791 at main causes an ASSERT failure:
ASSERTION FAILED: g_jscConfig.options.allowUnfinalizedAccess || g_jscConfig.options.isFinalized

The reason is that StrongRefTracker::enabled() is assuming that JSC Options are initialized when
they may not be.

The fix is to make StrongRefTracker::enabled() initialize JSC if needed.

* Source/JavaScriptCore/heap/Strong.h:
(JSC::REFTRACKER_DECL):
* Source/JavaScriptCore/heap/StrongInlines.h:
(JSC::initializeSystemForStrongRefTracker):
* Source/WTF/wtf/RefTrackerMixin.h:

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



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


More information about the webkit-changes mailing list