GNOME Bugzilla – Bug 577024
help-browser plugin crashes when used with webkit 1.1.3
Last modified: 2009-07-20 20:37:45 UTC
Please describe the problem: When gimp is built against webkit 1.1.3, the help-browser plugin crashes. Steps to reproduce: 1. Build gimp against webkit 1.1.3 2. Try to use the help manual Actual results: On the console, the following error message is printed: GLib-ERROR **: The thread system is not yet initialized. aborting... A "GIMP Message" window pop up with this message: "Plug-in crashed: "help-browser" (/usr/lib/gimp/2.0/plug-ins/help-browser) The dying plug-in may have messed up GIMP's internal state. You may want to save your images and restart GIMP to be on the safe side." Another window pops up asking to use the web browser instead or to cancel. Expected results: The gimp' internal help browser to open the help manual. Does this happen every time? Yes Other information: Yesterday, I tried building gimp from svn. It has the same problem as 2.6.6.
Oh sweet. So the webkit people managed to break things again in a minor update? You should have reported that against webkit then. If they change their ABI then they should change the library version and announce the change so that applications have a chance to adapt to these changes. And yes, introducing threads and requiring apps to call g_thread_init() is an incompatible ABI change.
The plug-in now calls g_thread_init() in both branches: 2009-03-28 Sven Neumann <sven@gimp.org> Bug 577024 – help-browser plugin crashes when used with webkit 1.1.3 * plug-ins/help-browser/help-browser.c (run): call g_thread_init(). Seems to be needed with newer versions of webkit.
Thanks for the quick reply but it's still not fixed. I applyed the changes of plug-ins/help-browser/help-browser.c from svn's trunk to the source of 2.6.6. The help-browser now opens up showing the table of contents. However, when I click on a link to open a section, the plugin crashes. As for the webkit people, they did updated the library soname version. I guess they just didn't make any announcement.
they did... https://lists.webkit.org/pipermail/webkit-dev/2009-March/006860.html
I've fixed this on the master branch and the help-browser now works fine at least with webkit 1.1.6. Not sure how we can deal with this in 2,6 as I don't want to introduce a dependency on webkit 1.1 in that branch.
This should not be in the unconfirmed state.
Please leave the setting of severity to the developers. Crashes of plugins are never critical.
Should we make 2.6.7 depend on webkit >= 1.1.0 then? Probably better than having a crashing help-browser. If no one complains during the next days, I will port the changes from master to the gimp-2-6 branch.
Just a confirmation that with the git trunk patches, gimp-2.6.6 help-browser works with gtkwebkit-1.1.10 (soname contains "1.0.2") whereas it did not without the patch, and also did not (crashed differently, but I didn't diagnose further) without patch with an older webkit having soname with "1.0.1". Would be great to get this fixed in release.
I should add that I'm on OS X 10.4/ppc and OS X 10.5/intel, so both the visibility of the problem and the technical solution are cross-platform.
I've picked three commits from master and merged them to the gimp-2-6 branch. This means the help-browser in GIMP 2.6.7 will depends on webkit >= 1.1.0.