From: Kevin M S. <ke...@si...> - 2006-09-08 20:23:37
Attachments:
signature.asc
|
Since I've seen that we're clearly interested in keeping GStreamer, here's the problem that I have on my amd64 laptop. I don't have this problem on my x86 desktop. About one in every three to four launches of Gaim, gstreamer fails to initialize. We call gst_init_check(NULL, NULL, error) to initialize GStreamer and error is a GError value which can return an explanation of the failure. The two NULLs allow for arguments to Gaim to be passed on to GStreamer. Officially, NULL is allowed and should not cause problems.= In GStreamer, all the function gst_init_check does is parse the options via glib's g_option_*. If the glib option parsing is successful, GStreamer is magically initialized. It passes the GErrror to g_option_context_parse(). gst_init_check returns g_option_context_parse()'s return value and passes the GError back to us.= In effect, what is happening for me is g_option_context_parse(context, NULL, NULL, error) is returning FALSE intermittently and it is not setting the GError struct to contain anything. How can g_option_context_parse() fail on empty argc and argv intermittently? I wrote a test program which *only* inits GStreamer and prints the result, then exits. I don't use any other GStreamer programs so I have no other context for testing really. This program succeeds in initializing GStreamer 100% of the time. Any ideas? Kevin |
From: Luke S. <lsc...@us...> - 2006-09-08 20:26:27
|
I am getting this with slightly greater frequency on i386 debian unstable. luke On Fri, Sep 08, 2006 at 03:23:22PM -0500, Kevin M Stange wrote: > Since I've seen that we're clearly interested in keeping GStreamer, > here's the problem that I have on my amd64 laptop. I don't have this > problem on my x86 desktop. > > About one in every three to four launches of Gaim, gstreamer fails to > initialize. We call gst_init_check(NULL, NULL, error) to initialize > GStreamer and error is a GError value which can return an explanation of > the failure. The two NULLs allow for arguments to Gaim to be passed on > to GStreamer. Officially, NULL is allowed and should not cause problems. > > In GStreamer, all the function gst_init_check does is parse the options > via glib's g_option_*. If the glib option parsing is successful, > GStreamer is magically initialized. It passes the GErrror to > g_option_context_parse(). gst_init_check returns > g_option_context_parse()'s return value and passes the GError back to us. > > In effect, what is happening for me is g_option_context_parse(context, > NULL, NULL, error) is returning FALSE intermittently and it is not > setting the GError struct to contain anything. How can > g_option_context_parse() fail on empty argc and argv intermittently? > > I wrote a test program which *only* inits GStreamer and prints the > result, then exits. I don't use any other GStreamer programs so I have > no other context for testing really. This program succeeds in > initializing GStreamer 100% of the time. > > Any ideas? > > Kevin > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Gaim-devel mailing list > Gai...@li... > https://lists.sourceforge.net/lists/listinfo/gaim-devel |
From: Wesley M. <mo...@ch...> - 2006-09-09 01:09:10
|
On Fri, 8 Sep 2006, Kevin M Stange wrote: > In GStreamer, all the function gst_init_check does is parse the options > via glib's g_option_*. If the glib option parsing is successful, > GStreamer is magically initialized. It passes the GErrror to > g_option_context_parse(). gst_init_check returns > g_option_context_parse()'s return value and passes the GError back to us. > > In effect, what is happening for me is g_option_context_parse(context, > NULL, NULL, error) is returning FALSE intermittently and it is not > setting the GError struct to contain anything. How can > g_option_context_parse() fail on empty argc and argv intermittently? > > I wrote a test program which *only* inits GStreamer and prints the > result, then exits. I don't use any other GStreamer programs so I have > no other context for testing really. This program succeeds in > initializing GStreamer 100% of the time. I tried this on FreeBSD back in July. The test program works 100% of the time, and gaim fails 100% of the time on my laptop: http://sourceforge.net/mailarchive/forum.php?thread_id=21951615&forum_id=9587 -- This .signature sanitized for your protection |
From: Mark D. <ma...@ki...> - 2006-09-09 10:43:57
|
I just made a commit to SVN that I believe will work around the init failure, if yous guys want to try it out. -Mark |
From: Luke S. <lsc...@us...> - 2006-09-11 16:42:27
|
On Sat, Sep 09, 2006 at 05:48:09AM -0500, Mark Doliner wrote: > I just made a commit to SVN that I believe will work around the init failure, > if yous guys want to try it out. > -Mark It is still aborting today. luke |
From: Luke S. <lsc...@us...> - 2006-09-12 13:53:41
|
On Mon, Sep 11, 2006 at 12:43:34PM -0400, Luke Schierer wrote: > On Sat, Sep 09, 2006 at 05:48:09AM -0500, Mark Doliner wrote: > > I just made a commit to SVN that I believe will work around the init failure, > > if yous guys want to try it out. > > -Mark > > It is still aborting today. > > luke Yesterday, it gave a useless bt, just 3 ?? () lines. Today's is different, more contentful. [New Thread -1510909008 (LWP 30037)] [New Thread -1525023824 (LWP 30038)] [New Thread -1539310672 (LWP 30039)] [New Thread -1553990736 (LWP 30040)] GLib-GObject: cannot register existing type `GstAudioClock' GLib-GObject: cannot register existing type `GstAudioClock' GLib-GObject: cannot register existing type `GstAudioClock' GLib-GObject: g_object_new: assertion `G_TYPE_IS_OBJECT (object_type)' failed GLib-GObject: cannot register existing type `GstAudioClock' GLib-GObject: g_object_new: assertion `G_TYPE_IS_OBJECT (object_type)' failed Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1553990736 (LWP 30040)] 0xa631a600 in gst_audio_clock_new () from /usr/lib/libgstaudio-0.10.so.0 (gdb) bt #0 0xa631a600 in gst_audio_clock_new () from /usr/lib/libgstaudio-0.10.so.0 #1 0xa631efa7 in gst_base_audio_sink_get_type () from /usr/lib/libgstaudio-0.10.so.0 #2 0xa76a6b10 in IA__g_type_create_instance (type=150385824) at gtype.c:1559 #3 0xa768db12 in g_object_constructor (type=150385824, n_construct_properties=2, construct_params=0x8f096d8) at gobject.c:1015 #4 0xa768bf88 in IA__g_object_newv (object_type=150385824, n_parameters=0, parameters=0x0) at gobject.c:912 #5 0xa768ca77 in IA__g_object_new_valist (object_type=150385824, first_property_name=0x0, var_args=0xa35fe478 "") at gobject.c:955 #6 0xa768cc30 in IA__g_object_new (object_type=150385824, first_property_name=0x0) at gobject.c:793 #7 0xa7e7e6dc in gst_element_factory_create () from /usr/lib/libgstreamer-0.10.so.0 #8 0xa5712bd4 in gst_auto_audio_sink_get_type () from /usr/lib/gstreamer-0.10/libgstautodetect.so #9 0xa7e7989a in gst_element_continue_state () from /usr/lib/libgstreamer-0.10.so.0 #10 0xa7e7c8e7 in gst_element_release_request_pad () from /usr/lib/libgstreamer-0.10.so.0 #11 0xa7e78a13 in gst_element_set_state () from /usr/lib/libgstreamer-0.10.so.0 #12 0xa7e6e3c2 in gst_bin_add () from /usr/lib/libgstreamer-0.10.so.0 #13 0xa7e7989a in gst_element_continue_state () ---Type <return> to continue, or q <return> to quit--- from /usr/lib/libgstreamer-0.10.so.0 #14 0xa7e7c8e7 in gst_element_release_request_pad () from /usr/lib/libgstreamer-0.10.so.0 #15 0xa7e78a13 in gst_element_set_state () from /usr/lib/libgstreamer-0.10.so.0 #16 0xa63ad3d9 in ?? () from /usr/lib/gstreamer-0.10/libgstplaybin.so #17 0x08f01170 in ?? () #18 0x00000002 in ?? () #19 0x08f09a40 in ?? () #20 0xa63b90a4 in ?? () from /usr/lib/gstreamer-0.10/libgstplaybin.so #21 0x00000000 in ?? () (gdb) bt full #0 0xa631a600 in gst_audio_clock_new () from /usr/lib/libgstaudio-0.10.so.0 No symbol table info available. #1 0xa631efa7 in gst_base_audio_sink_get_type () from /usr/lib/libgstaudio-0.10.so.0 No symbol table info available. #2 0xa76a6b10 in IA__g_type_create_instance (type=150385824) at gtype.c:1559 pnode = <value optimized out> node = (TypeNode *) 0x8f6b4a0 instance = (GTypeInstance *) 0xa3a1aaa0 class = (GTypeClass *) 0x8edc360 i = 2 total_size = <value optimized out> #3 0xa768db12 in g_object_constructor (type=150385824, n_construct_properties=2, construct_params=0x8f096d8) at gobject.c:1015 object = (GObject *) 0xa750c4c0 #4 0xa768bf88 in IA__g_object_newv (object_type=150385824, n_parameters=0, parameters=0x0) at gobject.c:912 pspec = (GParamSpec *) 0x8e9fd00 nqueue = <value optimized out> object = <value optimized out> class = (GObjectClass *) 0x8edc360 unref_class = (GObjectClass *) 0x0 slist = <value optimized out> n_total_cparams = 2 n_cparams = 0 n_oparams = 0 n_cvalues = 2 clist = (GList *) 0x0 i = 6 __PRETTY_FUNCTION__ = "IA__g_object_newv" #5 0xa768ca77 in IA__g_object_new_valist (object_type=150385824, first_property_name=0x0, var_args=0xa35fe478 "") at gobject.c:955 _value = <value optimized out> _value_type = <value optimized out> _vtable = <value optimized out> _collect_format = <value optimized out> _cvalues = {{v_int = -1486133464, v_long = -1486133464, v_int64 = 586326123192477480, v_double = 1.8028615650282648e-269, v_pointer = 0xa76b6728}, {v_int = 7, v_long = 7, v_int64 = -6674365262289960953, v_double = -2.6780171001132599e-138, v_pointer = 0x7}, {v_int = -1486320546, v_long = -1486320546, v_int64 = 586326140372159582, v_double = 1.8028673415873624e-269, v_pointer = 0xa7688c5e}, {v_int = 7, v_long = 7, v_int64 = 25769803783, v_double = 1.2731974749250093e-313, v_pointer = 0x7}, { v_int = -1477856235, v_long = -1477856235, v_int64 = 583679495633482773, v_double = 1.2136283200452824e-269, v_pointer = 0xa7e9b415}, { v_int = 1073741825, v_long = 1073741825, v_int64 = 586326138637254657, v_double = 1.8028667582365898e-269, v_pointer = 0x40000001}, { v_int = -1477582420, v_long = -1477582420, v_int64 = 586326123201028524, v_double = 1.8028615679034991e-269, v_pointer = 0xa7ede1ac}, { v_int = 136514688, v_long = 136514688, v_int64 = -6383632109774107520, v_double = -7.6779194409451928e-119, v_pointer = 0x8230c80}} _n_values = <value optimized out> error = <value optimized out> pspec = <value optimized out> params = <value optimized out> name = <value optimized out> object = <value optimized out> n_params = <value optimized out> n_alloced_params = <value optimized out> __PRETTY_FUNCTION__ = "IA__g_object_new_valist" #6 0xa768cc30 in IA__g_object_new (object_type=150385824, first_property_name=0x0) at gobject.c:793 var_args = 0xa35fe478 "" __PRETTY_FUNCTION__ = "IA__g_object_new" #7 0xa7e7e6dc in gst_element_factory_create () from /usr/lib/libgstreamer-0.10.so.0 No symbol table info available. #8 0xa5712bd4 in gst_auto_audio_sink_get_type () from /usr/lib/gstreamer-0.10/libgstautodetect.so No symbol table info available. #9 0xa7e7989a in gst_element_continue_state () from /usr/lib/libgstreamer-0.10.so.0 No symbol table info available. #10 0xa7e7c8e7 in gst_element_release_request_pad () from /usr/lib/libgstreamer-0.10.so.0 No symbol table info available. #11 0xa7e78a13 in gst_element_set_state () from /usr/lib/libgstreamer-0.10.so.0 No symbol table info available. #12 0xa7e6e3c2 in gst_bin_add () from /usr/lib/libgstreamer-0.10.so.0 No symbol table info available. #13 0xa7e7989a in gst_element_continue_state () from /usr/lib/libgstreamer-0.10.so.0 No symbol table info available. #14 0xa7e7c8e7 in gst_element_release_request_pad () from /usr/lib/libgstreamer-0.10.so.0 No symbol table info available. #15 0xa7e78a13 in gst_element_set_state () from /usr/lib/libgstreamer-0.10.so.0 No symbol table info available. #16 0xa63ad3d9 in ?? () from /usr/lib/gstreamer-0.10/libgstplaybin.so No symbol table info available. #17 0x08f01170 in ?? () No symbol table info available. #18 0x00000002 in ?? () No symbol table info available. #19 0x08f09a40 in ?? () No symbol table info available. #20 0xa63b90a4 in ?? () from /usr/lib/gstreamer-0.10/libgstplaybin.so No symbol table info available. #21 0x00000000 in ?? () No symbol table info available. (gdb) |