As reported in: https://bugs.gentoo.org/show_bug.cgi?id=463960 and: http://osdyson.org/issues/161 Compilation can hand in some situations when building gobject-introspection, the following patch looks to fix it: http://cgit.osdyson.org/pkg-webkit/webkit.git/plain/debian/patches/dyson-g-ir-scanner-hangs.patch?h=unstable&id=ae705bbaacd20cab2414bbdcf2f394d2ac6a7c4e
Created attachment 219115 [details] patch
People is still suffering this in 2.2.4 :(
Comment on attachment 219115 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=219115&action=review > webkit/Source/WebKit/gtk/webkit/webkitglobals.cpp:573 > + // http://osdyson.org/issues/161 > + // WebKitGTK FTBFS when building GObject introspection due to deadlock. > + // When gobject introspection is done, a simple program call exit() > + // exit() -> webkitExit() -> g_object_unref() -> webkit_get_default_session() > + // -> ResourceHandle::defaultSession() => default session doesn't exist! AND > + // we try to create it! Thus deadlock. So, create default session earlier: > + (void) webkit_get_default_session(); I think we should never create the network session if it's not needed
Created attachment 226485 [details] Patch I think this is a better solution. In the case of g-i the default session won't even be created. This also ensures that the soup session is also properly finalized in WebKit2.
Comment on attachment 226485 [details] Patch r=me. The cache wouldn't be properly shutdown also without the finalize() call.
Committed r165467: <http://trac.webkit.org/changeset/165467>
(In reply to comment #6) > Committed r165467: <http://trac.webkit.org/changeset/165467> Wasn't this included in 2.4.x?