Bug 204573

Summary: [GLIB] The API lock should be held before calling JSC::createTypeError
Product: WebKit Reporter: Carlos Garcia Campos <cgarcia>
Component: JavaScriptCoreAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: bugs-noreply, ews-watchlist, keith_miller, mark.lam, msaboff, saam, tzagallo, webkit-bug-importer, ysuzuki, zan
Priority: P2 Keywords: Gtk, InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch mark.lam: review+

Description Carlos Garcia Campos 2019-11-25 06:25:17 PST
We are missing it in several places. This is causing a crash in test /jsc/object after r252298.

  /jsc/object:                                                        CRASH
1   0x7f9731b73f19 /home/slave/webkitgtk/gtk-linux-64-release/build/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18(WTFCrash+0x9) [0x7f9731b73f19]
2   0x7f97314aef35 /home/slave/webkitgtk/gtk-linux-64-release/build/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18(+0xaa2f35) [0x7f97314aef35]
3   0x7f97314af61b /home/slave/webkitgtk/gtk-linux-64-release/build/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18(_ZN3JSC4Heap19stopIfNecessarySlowEv+0x1b) [0x7f97314af61b]
4   0x7f97314afc05 /home/slave/webkitgtk/gtk-linux-64-release/build/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18(_ZN3JSC4Heap25collectIfNecessaryOrDeferEPNS_17GCDeferralContextE+0xd5) [0x7f97314afc05]
5   0x7f97314c48c2 /home/slave/webkitgtk/gtk-linux-64-release/build/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18(_ZN3JSC14LocalAllocator16allocateSlowCaseEPNS_17GCDeferralContextENS_21AllocationFailureModeE+0x82) [0x7f97314c48c2]
6   0x7f97317e35bc /home/slave/webkitgtk/gtk-linux-64-release/build/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18(_ZN3JSC15createTypeErrorEPNS_14JSGlobalObjectERKN3WTF6StringEPFS3_S5_S5_NS_11RuntimeTypeENS_13ErrorInstance28SourceTextWhereErrorOccurredEES6_+0x17c) [0x7f97317e35bc]
7   0x7f9730e4e198 /home/slave/webkitgtk/gtk-linux-64-release/build/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18(_Z25jscContextGValueToJSValueP11_JSCContextPK7_GValuePPK13OpaqueJSValue+0x238) [0x7f9730e4e198]
8   0x7f9730e77dad /home/slave/webkitgtk/gtk-linux-64-release/build/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18(+0x46bdad) [0x7f9730e77dad]
9   0x7f9730e7817e /home/slave/webkitgtk/gtk-linux-64-release/build/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18(jsc_value_object_invoke_method+0x20e) [0x7f9730e7817e]
10  0x5587c3782445 ./Tools/glib/../../WebKitBuild/Release/bin/TestWebKitAPI/TestJSC(+0x17445) [0x5587c3782445]
11  0x7f9731f83b4a /home/slave/webkitgtk/gtk-linux-64-release-tests/build/WebKitBuild/DependenciesGTK/Root/lib/libglib-2.0.so.0(+0x72b4a) [0x7f9731f83b4a]
12  0x7f9731f83a14 /home/slave/webkitgtk/gtk-linux-64-release-tests/build/WebKitBuild/DependenciesGTK/Root/lib/libglib-2.0.so.0(+0x72a14) [0x7f9731f83a14]
13  0x7f9731f83df2 /home/slave/webkitgtk/gtk-linux-64-release-tests/build/WebKitBuild/DependenciesGTK/Root/lib/libglib-2.0.so.0(g_test_run_suite+0xc2) [0x7f9731f83df2]
14  0x7f9731f83e11 /home/slave/webkitgtk/gtk-linux-64-release-tests/build/WebKitBuild/DependenciesGTK/Root/lib/libglib-2.0.so.0(g_test_run+0x11) [0x7f9731f83e11]
15  0x5587c376fb02 ./Tools/glib/../../WebKitBuild/Release/bin/TestWebKitAPI/TestJSC(+0x4b02) [0x5587c376fb02]
16  0x7f972e24f09b /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb) [0x7f972e24f09b]
17  0x5587c376fb6a ./Tools/glib/../../WebKitBuild/Release/bin/TestWebKitAPI/TestJSC(+0x4b6a) [0x5587c376fb6a]
Comment 1 Carlos Garcia Campos 2019-11-25 06:26:29 PST
Created attachment 384292 [details]
Patch
Comment 2 Mark Lam 2019-11-25 08:58:28 PST
Comment on attachment 384292 [details]
Patch

LGTM
Comment 3 Carlos Garcia Campos 2019-11-26 00:25:03 PST
Committed r252877: <https://trac.webkit.org/changeset/252877>
Comment 4 Radar WebKit Bug Importer 2019-11-26 00:26:40 PST
<rdar://problem/57485012>