[gst-devel] gstreamer head broken
Brian Cameron
Brian.Cameron at Sun.COM
Wed Jul 2 08:26:08 CEST 2003
I notice the following problem in gstreamer head...
Running various programs like gst-register or gst-inspect segfault when
in gst_atomic_int_init() on the line 429 of gstatomic_impl.h that reads
as follows
429 aint->lock = g_mutex_new ();
Here is the stacktrace.
=>[6] gst_atomic_int_init(aint = 0xff330b50, val = 1), line 429 in
"gstatomic_impl.h"
[7] _gst_debug_init(), line 134 in "gstinfo.c"
[8] init_pre(), line 388 in "gst.c"
[9] init_popt_callback(context = 0x348b0, reason = POPT_CALLBACK_REASON_PRE,
option = (nil), arg = (nil), data = (nil)), line 624 in "gst.c"
[10] invokeCallbacksPRE(0x348b0, 0xff1e7c44, 0xff139938, 0xfed3a000, 0x0,
0xfc00), at 0xfed60f20
[11] invokeCallbacksPRE(0x348b0, 0xffbfe7e4, 0x34e58, 0x72000000, 0x7200,
0xfc00), at 0xfed60edc
[12] poptGetContext(0xff1bd980, 0x0, 0x348b0, 0xffbfe7c8, 0x0, 0x348b0), at
0xfed6124c
[13] gst_init_check_with_popt_table(argc = 0xffbfe9bc, argv = 0xffbfe9c0,
popt_options = 0xffbfe914), line 264 in "gst.c"
[14] gst_init_with_popt_table(argc = 0xffbfe9bc, argv = 0xffbfe9c0,
popt_options = 0xffbfe914), line 206 in "gst.c"
[15] main(argc = 1, argv = 0xffbfe9dc), line 989 in "gst-inspect.c"
I notice in init_popt_callback that POPT_CALLBACK_REASON_PRE calls init_pre,
which eventually calls the above g_mutext_new, and the only place that
g_thread_init gets called is in the case POPT_CALLBACK_REASON_POST.
At least on Solaris, POPT_CALLBACK_REASON_PRE gets called first, so the init
never gets called.
Moving the g_thread_init to init_pre seems to fix the above problem, but
then I get tons of these errors when I run gst-register, and it does not
seem to actually register anything:
(process:29437): GLib-GObject-WARNING **: invalid cast from (NULL) pointer
to `GObject'
So it seems that head is pretty broken. I'm assuming that all this is
not Solaris specific.
I also notice that gst-editor fails to build with the following error
when building libs/gst/debug-ui/debug-ui.c
"debug-ui.c", line 66: undefined symbol: GST_CAT_MAX_CATEGORY
The GST_CAT_MAX_CATEGORY seems to have been removed.
Brian
More information about the gstreamer-devel
mailing list