[webkit-gtk] WTF is in both libjavascriptcoregtk and libwebkit2gtk

Carlos Garcia Campos cgarcia at igalia.com
Sat Jan 16 05:03:39 PST 2016

El vie, 15-01-2016 a las 22:57 -0800, Jeremy Huddleston Sequoia
> Hey folks,
> WebKit2 isn't initializing correctly for us in 2.11.3, and clients
> are crashing on initial launch.
> Philip first mentioned this in https://bugs.webkit.org/show_bug.cgi?i
> d=144557, and the issue is currently being tracked in
> https://bugs.webkit.org/show_bug.cgi?id=153176
> Note that this is a regression since 2.4.x, so it may have been this
> way for quite a while.
> The crux of the issue is that WebKit::InitializeWebKit2() calls
> JSC::initializeThreading() which calls
> WTF::initializeThreading().  However, there are two different copies
> of WTF::initializeThreading() in process.  One
> WTF::initializeThreading() is in libjavascriptcoregtk, and the other
> is in libwebkit2gtk.  The libwebkit2gtk version thus does not get
> initialized, and we fail an assertion in here.
> Obviously, we want just a single instance of this class.
> Should WTF be a separate dylib?  It sounds like that's appropriate
> based on this layering.  Is the WTF API expected to be provided by
> both libjavascriptcoregtk and libwebkit2gtk?

I think this is because WebCore and JSC are both linking to WTF
statically. Since WebCore depends on JSC maybe we could just remove WTF
from WebCore CMakeLists. Could you try removing WTF${DEBUG_SUFFIX}
from WebCore_LIBRARIES in Source/WebCore/CMakeLists.txt?

> --Jeremy
> _______________________________________________
> webkit-gtk mailing list
> webkit-gtk at lists.webkit.org
> https://lists.webkit.org/mailman/listinfo/webkit-gtk
Carlos Garcia Campos

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: This is a digitally signed message part
URL: <https://lists.webkit.org/pipermail/webkit-gtk/attachments/20160116/365cc770/attachment.sig>

More information about the webkit-gtk mailing list