After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 535295 - GLib-GObject-ERROR **: g_type_plugin_*() invalidly modified type '<type name>'
GLib-GObject-ERROR **: g_type_plugin_*() invalidly modified type '<type name>'
Status: RESOLVED DUPLICATE of bug 537555
Product: glib
Classification: Platform
Component: gobject
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gtkdev
gtkdev
Depends on:
Blocks:
 
 
Reported: 2008-05-28 17:12 UTC by Christian Persch
Modified: 2008-07-25 07:33 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Test case (1.05 KB, text/x-csrc)
2008-07-25 00:13 UTC, Sam Thursfield
Details
Test case (1.59 KB, text/x-csrc)
2008-07-25 00:58 UTC, Sam Thursfield
Details

Description Christian Persch 2008-05-28 17:12:13 UTC
(Not sure this is gobject; might also be GIO's module gtypemodule, or those of the programmes involved...)

This crash:

GLib-GObject-ERROR **: g_type_plugin_*() invalidly modified type '<type name>'

where <type name> varies (e.g. most often TotemPlParser, and GLocalFileEnumerator, but also GdkPixbufGifAnim, GThemedIcon, GFileInfo, ECalBackendCache, EGwFilter, ...) has started to show up more frequently in crashes submitted to bugzilla recently, for different Gnome programmes (epiphany, gedit, totem, rhythmbox, evo, ...) I queried some historical data, and it used to be 0 or 1 bug per month with this crash in the last 15 months, until in the last 4 months it went up to 2, 8, 5, 13 bugs per month. That suggests that somehow this is connected to GIO...

Most of the type names involved shouldn't be involed with gtypeplugin at all, since they're statically registered...

New bug reports that contain the error are bug 515802, bug 519387, bug 520070, bug 521578, bug 523109, bug 523619, bug 524588, bug 525334, bug 527862, bug 527894, bug 530443, bug 531763, bug 531771, bug 531814, bug 531949, bug 532380, bug 532504, bug 532647, bug 532746, bug 533999, bug 534092, bug 534292, bug 535072; older ones are bug 300659, bug 349410, bug 436756, bug 448432, bug 474823, bug 489741, bug 493432.

Some of the bugs have traces with symbols, e.g. from bug 527862, but they're not very useful...

[Thread 1]

Thread 2 (process 8521)

  • #0 __kernel_vsyscall
  • #1 pthread_cond_wait
    from /lib/libpthread.so.0
  • #2 IA__g_static_rw_lock_writer_lock
    at gthread.c line 798
  • #3 IA__g_type_class_unref
    at gtype.c line 2427
  • #4 IA__g_object_newv
    at gobject.c line 967
  • #5 IA__g_object_new_valist
    at gobject.c line 986
  • #6 IA__g_object_new
    at gobject.c line 795
  • #7 IA__g_file_info_new
    at gfileinfo.c line 268


Bug 349410 suggests that this might be gobject bug #64764, but that's FIXED since 2.15.x, while I still see these crashes with glib 2.16.3.

I'm going to try to construct a simple testcase for this.
Comment 1 Sam Thursfield 2008-07-25 00:13:25 UTC
Created attachment 115213 [details]
Test case

My app has started crashing like this fairly regularly on my system. I've narrowed it down to the following test case, which crashes out with the error about once every five runs.

Notably, comment out g_thread_init() and it never crashes. The bug seems to be something to do with GtkFileChooserWidget, but only when g_thread_init() has been called..
Comment 2 Sam Thursfield 2008-07-25 00:19:34 UTC
Comment on attachment 115213 [details]
Test case

This is on ubuntu hardy, so glib 2.16.3 and gtk+ 2.12.9.
Comment 3 Sam Thursfield 2008-07-25 00:58:17 UTC
Created attachment 115215 [details]
Test case

Have narrowed this bug down to gtk_file_chooser_*_new(), but only if g_thread_init(NULL) is called still. I'm going to delve into gtk+ and investigate this further.
Comment 4 Christian Persch 2008-07-25 07:33:12 UTC
Actually this is a gobject bug, fixed already.

*** This bug has been marked as a duplicate of 537555 ***