[gstreamer-bugs] [Bug 505770] gst_element_get_state() should unblock if element posts an error

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Jun 30 17:24:43 PDT 2010


https://bugzilla.gnome.org/show_bug.cgi?id=505770
  GStreamer | gstreamer (core) | 0.10.14

Tim-Philipp Müller <t.i.m> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |
           Severity|major                       |blocker

--- Comment #21 from Tim-Philipp Müller <t.i.m at zen.co.uk> 2010-07-01 00:24:34 UTC ---
Re-opening this, because according to git-bisect it's responsible for causing
crashes in totem, when trying to play the next file after totem has gotten an
error (e.g. file is encrypted or is a random text file), leading to this:



** Message: Error: This appears to be a text file
gstdecodebin2.c(1795): type_found ():
/GstPlayBin2:play/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20:
decodebin2 cannot decode plain text files
...
0:00:03.312382906  7912      0x11ec100 DEBUG               playbin2
gstplaybin2.c:2993:autoplug_select_cb:<play> checking factory qtdemux

(lt-totem:7912): GLib-GObject-CRITICAL **: g_object_get: assertion `G_IS_OBJECT
(object)' failed
Segmentation fault




Program received signal SIGSEGV, Segmentation fault.
0x00007ffff328b6c2 in IA__g_value_set_object (value=0x7fffffffa780,
v_object=0x12d1de0) at /tmp/buildd/glib2.0-2.24.1/gobject/gobject.c:2840
2840    /tmp/buildd/glib2.0-2.24.1/gobject/gobject.c: No such file or
directory.
    in /tmp/buildd/glib2.0-2.24.1/gobject/gobject.c
(gdb) bt
#0  0x00007ffff328b6c2 in IA__g_value_set_object (value=0x7fffffffa780,
v_object=0x12d1de0) at /tmp/buildd/glib2.0-2.24.1/gobject/gobject.c:2840
#1  0x00007fffe817a092 in gst_play_bin_get_property (object=<value optimized
out>, prop_id=<value optimized out>, value=0x7fffffffa780, pspec=0xaa8680) at
gstplaybin2.c:1860
#2  0x00007ffff328d79c in object_get_property (object=0x9b1260,
first_property_name=<value optimized out>, var_args=0x7fffffffa7e0) at
/tmp/buildd/glib2.0-2.24.1/gobject/gobject.c:935
#3  IA__g_object_get_valist (object=0x9b1260, first_property_name=<value
optimized out>, var_args=0x7fffffffa7e0) at
/tmp/buildd/glib2.0-2.24.1/gobject/gobject.c:1555
#4  0x00007ffff328dab4 in IA__g_object_get (_object=0x9b1260,
first_property_name=0x467351 "source") at
/tmp/buildd/glib2.0-2.24.1/gobject/gobject.c:1645
#5  0x00000000004469ed in playbin_source_notify_cb (play=0x6a09e0, p=<value
optimized out>, bvw=0xb24090) at bacon-video-widget-gst-0.10.c:2395
#6  0x00007ffff328947e in IA__g_closure_invoke (closure=0xb60380,
return_value=0x0, n_param_values=2, param_values=0x18c9290,
invocation_hint=0x7fffffffaa40) at
/tmp/buildd/glib2.0-2.24.1/gobject/gclosure.c:767
#7  0x00007ffff329f3f7 in signal_emit_unlocked_R (node=0x69be60, detail=<value
optimized out>, instance=<value optimized out>, emission_return=<value
optimized out>, instance_and_params=<value optimized out>)
    at /tmp/buildd/glib2.0-2.24.1/gobject/gsignal.c:3248
#8  0x00007ffff32a0a76 in IA__g_signal_emit_valist (instance=0x9b1260,
signal_id=<value optimized out>, detail=2562, var_args=0x7fffffffac30) at
/tmp/buildd/glib2.0-2.24.1/gobject/gsignal.c:2981
#9  0x00007ffff32a0fc3 in IA__g_signal_emit (instance=0x6a09e0, signal_id=20,
detail=0) at /tmp/buildd/glib2.0-2.24.1/gobject/gsignal.c:3038
#10 0x00007ffff328d459 in g_object_dispatch_properties_changed
(object=0x9b1260, n_pspecs=1, pspecs=<value optimized out>) at
/tmp/buildd/glib2.0-2.24.1/gobject/gobject.c:801
#11 0x00007ffff56c3ad3 in gst_object_dispatch_properties_changed
(object=0x6a09e0, n_pspecs=20, pspecs=0x0) at gstobject.c:509
#12 0x00007ffff328f3bc in g_object_notify_queue_thaw (object=0x9b1260,
property_name=<value optimized out>) at
/tmp/buildd/glib2.0-2.24.1/gobject/gobjectnotifyqueue.c:120
#13 IA__g_object_notify (object=0x9b1260, property_name=<value optimized out>)
at /tmp/buildd/glib2.0-2.24.1/gobject/gobject.c:888
#14 0x00007fffe8176dc3 in notify_source_cb (uridecodebin=<value optimized out>,
pspec=<value optimized out>, group=<value optimized out>) at gstplaybin2.c:3099
#15 0x00007ffff328947e in IA__g_closure_invoke (closure=0x12d1de0,
return_value=0x0, n_param_values=2, param_values=0x18c92f0,
invocation_hint=0x7fffffffafe0) at
/tmp/buildd/glib2.0-2.24.1/gobject/gclosure.c:767
#16 0x00007ffff329f3f7 in signal_emit_unlocked_R (node=0x69be60, detail=<value
optimized out>, instance=<value optimized out>, emission_return=<value
optimized out>, instance_and_params=<value optimized out>)
    at /tmp/buildd/glib2.0-2.24.1/gobject/gsignal.c:3248
#17 0x00007ffff32a0a76 in IA__g_signal_emit_valist (instance=0x17bc110,
signal_id=<value optimized out>, detail=2562, var_args=0x7fffffffb1d0) at
/tmp/buildd/glib2.0-2.24.1/gobject/gsignal.c:2981
#18 0x00007ffff32a0fc3 in IA__g_signal_emit (instance=0x6a09e0, signal_id=20,
detail=0) at /tmp/buildd/glib2.0-2.24.1/gobject/gsignal.c:3038
#19 0x00007ffff328d459 in g_object_dispatch_properties_changed
(object=0x17bc110, n_pspecs=1, pspecs=<value optimized out>) at
/tmp/buildd/glib2.0-2.24.1/gobject/gobject.c:801
#20 0x00007ffff56c3ad3 in gst_object_dispatch_properties_changed
(object=0x6a09e0, n_pspecs=20, pspecs=0x0) at gstobject.c:509
#21 0x00007ffff328f3bc in g_object_notify_queue_thaw (object=0x17bc110,
property_name=<value optimized out>) at
/tmp/buildd/glib2.0-2.24.1/gobject/gobjectnotifyqueue.c:120
#22 IA__g_object_notify (object=0x17bc110, property_name=<value optimized out>)
at /tmp/buildd/glib2.0-2.24.1/gobject/gobject.c:888
#23 0x00007fffe193409c in setup_source (element=0x17bc110,
transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gsturidecodebin.c:1669
#24 gst_uri_decode_bin_change_state (element=0x17bc110,
transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gsturidecodebin.c:2146
#25 0x00007ffff56d9ecc in gst_element_change_state (element=0x6a09e0,
transition=20) at gstelement.c:2532
#26 0x00007ffff56dd04b in gst_element_set_state_func (element=0x17bc110,
state=GST_STATE_PAUSED) at gstelement.c:2488
#27 0x00007ffff56ca8e9 in gst_bin_element_set_state (element=0x9b1260,
transition=<value optimized out>) at gstbin.c:2121
#28 gst_bin_change_state_func (element=0x9b1260, transition=<value optimized
out>) at gstbin.c:2420
#29 0x00007ffff56fb805 in gst_pipeline_change_state (element=0x9b1260,
transition=<value optimized out>) at gstpipeline.c:475
#30 0x00007fffe817930f in gst_play_bin_change_state (element=0x9b1260,
transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gstplaybin2.c:3573
#31 0x00007ffff56d9ecc in gst_element_change_state (element=0x6a09e0,
transition=20) at gstelement.c:2532
#32 0x00007ffff56dd04b in gst_element_set_state_func (element=0x9b1260,
state=GST_STATE_PAUSED) at gstelement.c:2488
#33 0x0000000000455ebd in bacon_video_widget_open (bvw=0xb24090, mrl=<value
optimized out>, subtitle_uri=0x0, error=<value optimized out>) at
bacon-video-widget-gst-0.10.c:3745
#34 0x00000000004279f5 in totem_action_set_mrl_with_warning (totem=0x93f010,
mrl=0x18b5c70 "file:///home/tpm/music/nextsong.m4a", subtitle=0x0, warn=1) at
totem-object.c:1721


Haven't investigated exact cause yet though.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.



More information about the Gstreamer-bugs mailing list