The change in libgtk2.0 version from 2.11.5 to 2.11.6 is really a red
herring for this bug.  The change is really due to libglib2.0: libgtk
2.11.5 was built using libglib2.0-dev 2.13.6 while libgtk 2.11.6 was
built using libglib2.0-dev 2.13.7.  Rebuilding each libgtk version against
the other libglib version shows that what matters is the libglib version
used at build time.

libglib2.0 2.13.6 added locking with g_once_init_enter/g_once_init_leave
around the type_name##_get_type function defined by the G_DEFINE_TYPE macro.
The assertion failure
g_once_init_leave: assertion `initialization_value != 0' failed
shows that something is going wrong during gdk_screen_get_type; as a result
the lock is not released, and the next time gdk_screen_get_type is called it
loops trying to get for the lock.

It looks like this is a bug which was already present (perhaps in
openoffice) which has just been uncovered by this locking change.  The first
assertion failure is probably relevant:Bug
/build/buildd/glib2.0-2.13.7/gobject/gtype.c:2242: initialization assertion
failed, use IA__g_type_init() prior to this function

-- 
Martin Orr


Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to