WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
281626
Use of Options::enableStrongRefTracker() breaks testapi in the Debug build.
https://bugs.webkit.org/show_bug.cgi?id=281626
Summary
Use of Options::enableStrongRefTracker() breaks testapi in the Debug build.
Mark Lam
Reported
2024-10-16 14:57:22 PDT
ASSERTION FAILED: g_jscConfig.options.allowUnfinalizedAccess || g_jscConfig.options.isFinalized frame #0: 0x0000000109b45444 JavaScriptCore`WTFCrashWithInfo(line=141, file="/Volumes/Data/ws10/OpenSource/Source/JavaScriptCore/runtime/Options.h", function="static OptionsStorage::Bool &JSC::Options::enableStrongRefTracker()", counter=736) at Assertions.h:901:5 frame #1: 0x000000010868f6e4 JavaScriptCore`JSC::Options::enableStrongRefTracker() at Options.h:141:5 frame #2: 0x000000010868f610 JavaScriptCore`JSC::StrongRefTracker::enabled() at Strong.h:43:1 frame #3: 0x000000010868f5d8 JavaScriptCore`WTF::RefTrackerMixin<JSC::StrongRefTracker>::RefTrackerMixin(this=0x0000600002894028) at RefTrackerMixin.h:72:13 frame #4: 0x000000010868f304 JavaScriptCore`WTF::RefTrackerMixin<JSC::StrongRefTracker>::RefTrackerMixin(this=0x0000600002894028) at RefTrackerMixin.h:69:5 frame #5: 0x0000000108699470 JavaScriptCore`JSC::Strong<JSC::JSObject, (JSC::ShouldStrongDestructorGrabLock)0>::Strong(this=0x0000600002894018) at Strong.h:54:5 frame #6: 0x000000010866a7fc JavaScriptCore`JSC::Strong<JSC::JSObject, (JSC::ShouldStrongDestructorGrabLock)0>::Strong(this=0x0000600002894018) at Strong.h:56:5 * frame #7: 0x000000010866a790 JavaScriptCore`-[JSContext .cxx_construct](self=0x0000600002894000, _cmd="") at JSContext.mm:53:17 frame #8: 0x0000000186e1beb8 libobjc.A.dylib`object_cxxConstructFromClass + 176 frame #9: 0x0000000186e473f4 libobjc.A.dylib`objc_alloc_init + 80 frame #10: 0x00000001000537e0 testapi`checkNegativeNSIntegers() at testapi.mm:1657:26 frame #11: 0x0000000100052864 testapi`testObjectiveCAPI(filter=0x0000000000000000) at testapi.mm:2945:5 frame #12: 0x000000010002621c testapi`main(argc=1, argv=0x000000016fdff3e0) at testapi.c:1589:5 frame #13: 0x0000000186e60274 dyld`start + 2840 Caused by
284791@main
due to
https://bugs.webkit.org/show_bug.cgi?id=277835
. The reason is that StrongRefTracker::enabled() is assuming that JSC Options are initialized when they may not be.
Attachments
Add attachment
proposed patch, testcase, etc.
Mark Lam
Comment 1
2024-10-16 15:03:12 PDT
rdar://138066602
Mark Lam
Comment 2
2024-10-16 15:13:56 PDT
Pull request:
https://github.com/WebKit/WebKit/pull/35324
EWS
Comment 3
2024-10-16 21:06:37 PDT
Committed
285304@main
(49e3e2472395): <
https://commits.webkit.org/285304@main
> Reviewed commits have been landed. Closing PR #35324 and removing active labels.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug