GNOME Bugzilla – Bug 530317
GType registration error - race condition when parallel creation of pipelines
Last modified: 2008-04-28 09:21:32 UTC
Steps to reproduce: 1. Two threads(pthreads) create each a pipeline at the "same time" 2. Gstreamer try to register "GstClock" in Glib 3. This was produced with Glib 2.16.3 Stack trace: (testlib:32651): GLib-GObject-WARNING **: cannot register existing type `GstClock' (testlib:32651): GLib-GObject-WARNING **: gtype.c:3368: type id `0' is invalid (testlib:32651): GLib-GObject-WARNING **: can't peek value table for type `<invalid>' which is not currently referenced (testlib:32651): GLib-GObject-WARNING **: gvalue.c:96: cannot initialize GValue with type `(null)', this type has no GTypeValueTable implementation (testlib:32651): GLib-GObject-WARNING **: gtype.c:3368: type id `0' is invalid (testlib:32651): GLib-GObject-WARNING **: can't peek value table for type `<invalid>' which is not currently referenced Core was generated by `./testlib'. Program terminated with signal 11, Segmentation fault.
+ Trace 196317
Other information:
In theory glib 2.16 should have the type registration race conditions fixed... I wonder why this still happens. I've added a workaround for this in CVS, could you check if it fixes your issue? 2008-04-28 Sebastian Dröge <slomo@circular-chaos.org> * gst/gst.c: Register GstClock type from a type-safe context. Fixes bug #530317.