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 410039 - totem crashed with SIGSEGV in new_decoded_pad_full()
totem crashed with SIGSEGV in new_decoded_pad_full()
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
0.10.11
Other Linux
: Normal critical
: 0.10.13
Assigned To: Jan Schmidt
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2007-02-20 14:50 UTC by Sebastien Bacher
Modified: 2007-05-24 11:16 UTC
See Also:
GNOME target: ---
GNOME version: 2.17/2.18


Attachments
Don't crash if an unrecognised pad gets produced by decodebin for some reason. (2.45 KB, patch)
2007-05-23 15:52 UTC, Jan Schmidt
none Details | Review
updated patch - fix playbin crash with mp3 suburi (3.56 KB, patch)
2007-05-24 11:04 UTC, Jan Schmidt
committed Details | Review

Description Sebastien Bacher 2007-02-20 14:50:29 UTC
That bug has been opened on https://launchpad.net/bugs/86486

"Binary package hint: totem

Crashed while I attempted to play a movie in avi, encoded with xvid and mp3, with external subtitles in srt format.
...
Package: totem-gstreamer 2.17.91-0ubuntu3
...
libgstreamer-plugins-base0.10-0 0.10.11cvs20070110-0ubuntu5
...
http://librarian.launchpad.net/6480726/86486.apport
retraced report
...
ThreadStacktrace:
 .
 Thread 3 (process 30741):
 #0  0x00002acc83b06881 in ?? () from /lib/libpthread.so.0
 #1  0x00002acc85138a88 in IA__g_usleep (microseconds=<value optimized out>) at gtimer.c:170
 	request = {tv_sec = 0, tv_nsec = 50000000}
 	remaining = {tv_sec = 0, tv_nsec = 47057896778848}
 #2  0x00002acc8cd52b80 in gst_xvimagesink_event_thread (xvimagesink=0xb2e060) at xvimagesink.c:1435
 	__PRETTY_FUNCTION__ = "gst_xvimagesink_event_thread"
 #3  0x00002acc851368c4 in g_thread_create_proxy (data=0xb2da20) at gthread.c:591
 	__PRETTY_FUNCTION__ = "g_thread_create_proxy"
 #4  0x00002acc83aff2a5 in start_thread () from /lib/libpthread.so.0
 #5  0x00002acc85a465dd in clone () from /lib/libc.so.6
 #6  0x0000000000000000 in ?? ()
 .
 Thread 2 (process 30743):
 #0  0x00002acc83b03796 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
 #1  0x00002acc82ab1038 in gst_system_clock_async_thread (clock=0x829cb0) at gstsystemclock.c:260
 	entry = (GstClockEntry *) 0x2acc8538ac60
 	requested = 0
 	res = 2235083816
 	sysclock = (GstSystemClock *) 0x829cb0
 	__PRETTY_FUNCTION__ = "gst_system_clock_async_thread"
 #2  0x00002acc851368c4 in g_thread_create_proxy (data=0xad5380) at gthread.c:591
 	__PRETTY_FUNCTION__ = "g_thread_create_proxy"
 #3  0x00002acc83aff2a5 in start_thread () from /lib/libpthread.so.0
 #4  0x00002acc85a465dd in clone () from /lib/libc.so.6
 #5  0x0000000000000000 in ?? ()
 .
 Thread 1 (process 30737):
 #0  0x00002acc8c301a1f in new_decoded_pad_full (element=0xb92de0, pad=0xb72590, last=1, play_base_bin=0xae61c0, is_subs=1) at gstplaybasebin.c:1272
 	structure = <value optimized out>
 	mimetype = (const gchar *) 0xacf5c0 "audio/x-raw-int"
 	caps = (GstCaps *) 0x765100
 	info = (GstStreamInfo *) 0xd841e0
 	type = GST_STREAM_TYPE_UNKNOWN
 	sinkpad = <value optimized out>
 	group = (GstPlayBaseGroup *) 0xccbde0
 	parent = (GstObject *) 0xb5b690
 	__PRETTY_FUNCTION__ = "new_decoded_pad_full"
 #1  0x00002acc84eb57d9 in IA__g_closure_invoke (closure=0xa7a820, return_value=0x0, n_param_values=3, param_values=0x7fff2d6a4c40, invocation_hint=0x7fff2d6a4b10)
     at gclosure.c:490
 	marshal = (GClosureMarshal) 0x2aaaac837bf0 <gst_play_marshal_VOID__OBJECT_BOOLEAN>
 	marshal_data = (gpointer) 0x0
 	__PRETTY_FUNCTION__ = "IA__g_closure_invoke"
 #2  0x00002acc84ec53f8 in signal_emit_unlocked_R (node=0xbe1aa0, detail=0, instance=0xb92de0, emission_return=0x0, instance_and_params=0x7fff2d6a4c40) at gsignal.c:2440
 	tmp = <value optimized out>
 	handler = (Handler *) 0xb9ac40
 	accumulator = (SignalAccumulator *) 0x0
 	emission = {next = 0x7fff2d6a52b0, instance = 0xb92de0, ihint = {signal_id = 312, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 4}
 	class_closure = (GClosure *) 0xb42850
 	handler_list = (Handler *) 0xb9ac40
 	return_accu = (GValue *) 0x0
 	accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, 
       v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
 	signal_id = 312
 	max_sequential_handler_number = 1235
 	return_value_altered = 0
 #3  0x00002acc84ec6833 in IA__g_signal_emit_valist (instance=0xb92de0, signal_id=<value optimized out>, detail=0, var_args=0x7fff2d6a4ec0) at gsignal.c:2199
 	_cvalue = <value optimized out>
 	_flags = <value optimized out>
 	_vtable = <value optimized out>
 	_cvalues = {{v_int = 13417856, v_long = 13417856, v_int64 = 13417856, v_double = 6.629301690444845e-317, v_pointer = 0xccbd80}, {v_int = 11421088, v_long = 11421088, 
     v_int64 = 11421088, v_double = 5.6427672189297108e-317, v_pointer = 0xae45a0}, {v_int = -1400672320, v_long = 46912527101888, v_int64 = 46912527101888, 
     v_double = 2.3177868000639277e-310, v_pointer = 0x2aaaac836fc0}, {v_int = -2062491378, v_long = 47057894170894, v_int64 = 47057894170894, v_double = 2.3249688875471775e-310, 
     v_pointer = 0x2acc8510e10e}, {v_int = 40, v_long = 40, v_int64 = 40, v_double = 1.9762625833649862e-322, v_pointer = 0x28}, {v_int = 12115280, v_long = 12115280, 
     v_int64 = 12115280, v_double = 5.9857436377475374e-317, v_pointer = 0xb8dd50}, {v_int = 12000496, v_long = 12000496, v_int64 = 12000496, v_double = 5.9290328066552958e-317, 
     v_pointer = 0xb71cf0}, {v_int = -2062489620, v_long = 47057894172652, v_int64 = 47057894172652, v_double = 2.3249688876340343e-310, v_pointer = 0x2acc8510e7ec}}
 	_lcopy_format = <value optimized out>
 	_n_values = <value optimized out>
 	return_value = {g_type = 12000496, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {
       v_int = 1, v_uint = 1, v_long = 1, v_ulong = 1, v_int64 = 1, v_uint64 = 1, v_float = 1.40129846e-45, v_double = 4.9406564584124654e-324, v_pointer = 0x1}}}
 	error = <value optimized out>
 	instance_and_params = (GValue *) 0x7fff2d6a4c40
 	stack_values = {{g_type = 12574224, data = {{v_int = 12135904, v_uint = 12135904, v_long = 12135904, v_ulong = 12135904, v_int64 = 12135904, v_uint64 = 12135904, 
         v_float = 1.70060236e-38, v_double = 5.9959332476273673e-317, v_pointer = 0xb92de0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, 
         v_float = 0, v_double = 0, v_pointer = 0x0}}}, {g_type = 6819152, data = {{v_int = 12002704, v_uint = 12002704, v_long = 12002704, v_ulong = 12002704, v_int64 = 12002704, 
         v_uint64 = 12002704, v_float = 1.68193707e-38, v_double = 5.9301237036013133e-317, v_pointer = 0xb72590}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, 
         v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}, {g_type = 20, data = {{v_int = 1, v_uint = 1, v_long = 1, v_ulong = 1, v_int64 = 1, v_uint64 = 1, 
         v_float = 1.40129846e-45, v_double = 4.9406564584124654e-324, v_pointer = 0x1}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, 
         v_double = 0, v_pointer = 0x0}}}, {g_type = 12002704, data = {{v_int = 5, v_uint = 5, v_long = 5, v_ulong = 5, v_int64 = 5, v_uint64 = 5, v_float = 7.00649232e-45, 
         v_double = 2.4703282292062327e-323, v_pointer = 0x5}, {v_int = -2064881149, v_uint = 2230086147, v_long = 47057891781123, v_ulong = 47057891781123, 
         v_int64 = 47057891781123, v_uint64 = 47057891781123, v_float = -5.55806897e-36, v_double = 2.3249687694768023e-310, v_pointer = 0x2acc84ec6a03}}}, {g_type = 206158430232, 
     data = {{v_int = 761941376, v_uint = 761941376, v_long = 140733955329408, v_ulong = 140733955329408, v_int64 = 140733955329408, v_uint64 = 140733955329408, 
         v_float = 1.33185685e-11, v_double = 6.9531812531617105e-310, v_pointer = 0x7fff2d6a4d80}, {v_int = 761941184, v_uint = 761941184, v_long = 140733955329216, 
         v_ulong = 140733955329216, v_int64 = 140733955329216, v_uint64 = 140733955329216, v_float = 1.33184019e-11, v_double = 6.9531812531522244e-310, 
         v_pointer = 0x7fff2d6a4cc0}}}, {g_type = 0, data = {{v_int = 6819152, v_uint = 6819152, v_long = 17186688336, v_ulong = 17186688336, v_int64 = 17186688336, 
         v_uint64 = 17186688336, v_float = 9.55566723e-39, v_double = 8.4913522725980589e-314, v_pointer = 0x400680d50}, {v_int = -2050213536, v_uint = 2244753760, 
         v_long = 47057906448736, v_ulong = 47057906448736, v_int64 = 47057906448736, v_uint64 = 47057906448736, v_float = -1.92051441e-35, v_double = 2.3249694941531712e-310, 
         v_pointer = 0x2acc85cc3960}}}, {g_type = 140733955329312, data = {{v_int = 40, v_uint = 40, v_long = 40, v_ulong = 40, v_int64 = 40, v_uint64 = 40, 
         v_float = 5.60519386e-44, v_double = 1.9762625833649862e-322, v_pointer = 0x28}, {v_int = 40, v_uint = 40, v_long = 40, v_ulong = 40, v_int64 = 40, v_uint64 = 40, 
         v_float = 5.60519386e-44, v_double = 1.9762625833649862e-322, v_pointer = 0x28}}}, {g_type = 96273, data = {{v_int = -1400672320, v_uint = 2894294976, 
         v_long = 46912527101888, v_ulong = 46912527101888, v_int64 = 46912527101888, v_uint64 = 46912527101888, v_float = -3.73565068e-12, v_double = 2.3177868000639277e-310, 
         v_pointer = 0x2aaaac836fc0}, {v_int = -2053208506, v_uint = 2241758790, v_long = 47057903453766, v_ulong = 47057903453766, v_int64 = 47057903453766, 
         v_uint64 = 47057903453766, v_float = -1.49075729e-35, v_double = 2.3249693461819925e-310, v_pointer = 0x2acc859e8646}}}, {g_type = 40, data = {{v_int = 0, v_uint = 0, 
         v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 40, v_uint = 40, v_long = 25769803816, v_ulong = 25769803816, 
         v_int64 = 25769803816, v_uint64 = 25769803816, v_float = 5.60519386e-44, v_double = 1.273197476555426e-313, v_pointer = 0x600000028}}}, {g_type = 12135904, data = {{
         v_int = 11421088, v_uint = 11421088, v_long = 11421088, v_ulong = 11421088, v_int64 = 11421088, v_uint64 = 11421088, v_float = 1.60043531e-38, 
         v_double = 5.6427672189297108e-317, v_pointer = 0xae45a0}, {v_int = -2062412302, v_uint = 2232554994, v_long = 47057894249970, v_ulong = 47057894249970, 
         v_int64 = 47057894249970, v_uint64 = 47057894249970, v_float = -6.86891773e-36, v_double = 2.324968891454051e-310, v_pointer = 0x2acc851215f2}}}, {
     g_type = 47057906448736, data = {{v_int = 12168592, v_uint = 12168592, v_long = 12168592, v_ulong = 12168592, v_int64 = 12168592, v_uint64 = 12168592, 
         v_float = 1.70518293e-38, v_double = 6.012083265458626e-317, v_pointer = 0xb9ad90}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, 
         v_float = 0, v_double = 0, v_pointer = 0x0}}}, {g_type = 47057906448736, data = {{v_int = 40, v_uint = 40, v_long = 40, v_ulong = 40, v_int64 = 40, v_uint64 = 40, 
         v_float = 5.60519386e-44, v_double = 1.9762625833649862e-322, v_pointer = 0x28}, {v_int = 40, v_uint = 40, v_long = 40, v_ulong = 40, v_int64 = 40, v_uint64 = 40, 
         v_float = 5.60519386e-44, v_double = 1.9762625833649862e-322, v_pointer = 0x28}}}, {g_type = 24, data = {{v_int = -2062350031, v_uint = 2232617265, 
         v_long = 47057894312241, v_ulong = 47057894312241, v_int64 = 47057894312241, v_uint64 = 47057894312241, v_float = -6.91359498e-36, v_double = 2.3249688945306472e-310, 
         v_pointer = 0x2acc85130931}, {v_int = 13417856, v_uint = 13417856, v_long = 13417856, v_ulong = 13417856, v_int64 = 13417856, v_uint64 = 13417856, 
         v_float = 1.8802421e-38, v_double = 6.629301690444845e-317, v_pointer = 0xccbd80}}}, {g_type = 40, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, 
         v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 1, v_uint = 1, v_long = 1, v_ulong = 1, v_int64 = 1, v_uint64 = 1, v_float = 1.40129846e-45, 
         v_double = 4.9406564584124654e-324, v_pointer = 0x1}}}, {g_type = 48, data = {{v_int = -2053200652, v_uint = 2241766644, v_long = 47057903461620, 
         v_ulong = 47057903461620, v_int64 = 47057903461620, v_uint64 = 47057903461620, v_float = -1.49188428e-35, v_double = 2.3249693465700317e-310, v_pointer = 0x2acc859ea4f4}, 
       {v_int = 48, v_uint = 48, v_long = 48, v_ulong = 48, v_int64 = 48, v_uint64 = 48, v_float = 6.72623263e-44, v_double = 2.3715151000379834e-322, v_pointer = 0x30}}}, {
     g_type = 12000496, data = {{v_int = 6643904, v_uint = 6643904, v_long = 6643904, v_ulong = 6643904, v_int64 = 6643904, v_uint64 = 6643904, v_float = 9.31009247e-39, 
         v_double = 3.2825247206672413e-317, v_pointer = 0x6560c0}, {v_int = 13417856, v_uint = 13417856, v_long = 13417856, v_ulong = 13417856, v_int64 = 13417856, 
         v_uint64 = 13417856, v_float = 1.8802421e-38, v_double = 6.629301690444845e-317, v_pointer = 0xccbd80}}}}
 	free_me = (GValue *) 0x0
 	signal_return_type = 4
 	param_values = (GValue *) 0x7fff2d6a4c58
 	node = (SignalNode *) 0xbe1aa0
 	i = 2
 	n_params = 2
 	__PRETTY_FUNCTION__ = "IA__g_signal_emit_valist"
 #4  0x00002acc84ec6a03 in IA__g_signal_emit (instance=0x0, signal_id=2351983281, detail=13417952) at gsignal.c:2243
 	var_args = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7fff2d6a4fa0, reg_save_area = 0x7fff2d6a4ee0}}
 #5  0x00002aaaac8357da in close_pad_link (element=0xcc6000, pad=0xb71cf0, caps=<value optimized out>, decode_bin=0xb92de0, more=0) at gstdecodebin.c:743
 	padname = (gchar *) 0xccbc10 "src0"
 	ghost = (GstPad *) 0xb72590
 	data = <value optimized out>
 	structure = <value optimized out>
 	mimetype = <value optimized out>
 	padname = <value optimized out>
 	diff = 312
 	__PRETTY_FUNCTION__ = "close_pad_link"
 #6  0x00002aaaac8360fa in close_pad_link (element=<value optimized out>, pad=<value optimized out>, caps=<value optimized out>, decode_bin=0xb92de0, more=0) at gstdecodebin.c:1516
 	factory = <value optimized out>
 	ret = <value optimized out>
 	sinkpad = (GstPad *) 0xb71b80
 	structure = <value optimized out>
 	mimetype = <value optimized out>
 	padname = <value optimized out>
 	diff = 7753984
 	__PRETTY_FUNCTION__ = "close_pad_link"
 #7  0x00002aaaac8366b4 in type_found (typefind=0x774120, probability=<value optimized out>, caps=0xa6c200, decode_bin=0x0) at gstdecodebin.c:1554
 	pad = (GstPad *) 0xb71730
 	__PRETTY_FUNCTION__ = "type_found"
 #8  0x00002acc84eb57d9 in IA__g_closure_invoke (closure=0xbf9830, return_value=0x0, n_param_values=3, param_values=0x7fff2d6a53f0, invocation_hint=0x7fff2d6a52c0)
     at gclosure.c:490
 	marshal = (GClosureMarshal) 0x2acc82aca710 <gst_marshal_VOID__UINT_BOXED>
 	marshal_data = (gpointer) 0x0
 	__PRETTY_FUNCTION__ = "IA__g_closure_invoke"
 #9  0x00002acc84ec53f8 in signal_emit_unlocked_R (node=0xb1c610, detail=0, instance=0x774120, emission_return=0x0, instance_and_params=0x7fff2d6a53f0) at gsignal.c:2440
 	tmp = <value optimized out>
 	handler = (Handler *) 0xb75d20
 	accumulator = (SignalAccumulator *) 0x0
 	emission = {next = 0x0, instance = 0x774120, ihint = {signal_id = 303, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 4}
 	class_closure = (GClosure *) 0xb1c560
 	handler_list = (Handler *) 0xb75d20
 	return_accu = (GValue *) 0x0
 	accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, 
       v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
 	signal_id = 303
 	max_sequential_handler_number = 1232
 	return_value_altered = 1
 #10 0x00002acc84ec6833 in IA__g_signal_emit_valist (instance=0x774120, signal_id=<value optimized out>, detail=0, var_args=0x7fff2d6a5670) at gsignal.c:2199
 	_cvalue = <value optimized out>
 	_flags = <value optimized out>
 	_vtable = <value optimized out>
 	_cvalues = {{v_int = -2085612608, v_long = 47057871049664, v_int64 = 47057871049664, v_double = 2.3249677452066343e-310, v_pointer = 0x2acc83b013c0}, {v_int = 0, 
     v_long = 0, v_int64 = 0, v_double = 0, v_pointer = 0x0}, {v_int = -2059882048, v_long = 47057896780224, v_int64 = 47057896780224, v_double = 2.3249690164652087e-310, 
     v_pointer = 0x2acc8538b1c0}, {v_int = -2059882048, v_long = 47057896780224, v_int64 = 47057896780224, v_double = 2.3249690164652087e-310, v_pointer = 0x2acc8538b1c0}, {
     v_int = -2102865552, v_long = 47057853796720, v_int64 = 47057853796720, v_double = 2.3249668927979423e-310, v_pointer = 0x2acc82a8d170}, {v_int = -2059883424, 
     v_long = 47057896778848, v_int64 = 47057896778848, v_double = 2.3249690163972253e-310, v_pointer = 0x2acc8538ac60}, {v_int = 11998288, v_long = 11998288, v_int64 = 11998288, 
     v_double = 5.9279419097092783e-317, v_pointer = 0xb71450}, {v_int = 0, v_long = 0, v_int64 = 0, v_double = 0, v_pointer = 0x0}}
 	_lcopy_format = <value optimized out>
 	_n_values = <value optimized out>
 	return_value = {g_type = 47057871049664, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {
       v_int = -2059882048, v_uint = 2235085248, v_long = 47057896780224, v_ulong = 47057896780224, v_int64 = 47057896780224, v_uint64 = 47057896780224, v_float = -8.68428594e-36, 
       v_double = 2.3249690164652087e-310, v_pointer = 0x2acc8538b1c0}}}
 	error = <value optimized out>
 	instance_and_params = (GValue *) 0x7fff2d6a53f0
 	stack_values = {{g_type = 7823392, data = {{v_int = 7815456, v_uint = 7815456, v_long = 7815456, v_ulong = 7815456, v_int64 = 7815456, v_uint64 = 7815456, 
         v_float = 1.09517865e-38, v_double = 3.8613483161838454e-317, v_pointer = 0x774120}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, 
         v_float = 0, v_double = 0, v_pointer = 0x0}}}, {g_type = 28, data = {{v_int = 40, v_uint = 40, v_long = 40, v_ulong = 40, v_int64 = 40, v_uint64 = 40, 
         v_float = 5.60519386e-44, v_double = 1.9762625833649862e-322, v_pointer = 0x28}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, 
         v_double = 0, v_pointer = 0x0}}}, {g_type = 6828960, data = {{v_int = 10928640, v_uint = 10928640, v_long = 10928640, v_ulong = 10928640, v_int64 = 10928640, 
         v_uint64 = 10928640, v_float = 1.53142864e-38, v_double = 5.3994655797664806e-317, v_pointer = 0xa6c200}, {v_int = 134217728, v_uint = 134217728, v_long = 134217728, 
         v_ulong = 134217728, v_int64 = 134217728, v_uint64 = 134217728, v_float = 3.85185989e-34, v_double = 6.631236846766476e-316, v_pointer = 0x8000000}}}, {
     g_type = 47057851329478, data = {{v_int = -2062590176, v_uint = 2232377120, v_long = 47057894072096, v_ulong = 47057894072096, v_int64 = 47057894072096, 
         v_uint64 = 47057894072096, v_float = -6.74129939e-36, v_double = 2.3249688826659078e-310, v_pointer = 0x2acc850f5f20}, {v_int = -2105340920, v_uint = 2189626376, 
         v_long = 47057851321352, v_ulong = 47057851321352, v_int64 = 47057851321352, v_uint64 = 47057851321352, v_float = -1.92556256e-37, v_double = 2.3249667704985133e-310, 
         v_pointer = 0x2acc82830c08}}}, {g_type = 4294967296, data = {{v_int = 483, v_uint = 483, v_long = 4294967779, v_ulong = 4294967779, v_int64 = 4294967779, 
         v_uint64 = 4294967779, v_float = 6.76827158e-43, v_double = 2.1219960295989793e-314, v_pointer = 0x1000001e3}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, 
         v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}, {g_type = 47057849190464, data = {{v_int = 761943520, v_uint = 761943520, 
         v_long = 140733955331552, v_ulong = 140733955331552, v_int64 = 140733955331552, v_uint64 = 140733955331552, v_float = 1.33204281e-11, v_double = 6.9531812532676381e-310, 
         v_pointer = 0x7fff2d6a55e0}, {v_int = 761943440, v_uint = 761943440, v_long = 140733955331472, v_ulong = 140733955331472, v_int64 = 140733955331472, 
         v_uint64 = 140733955331472, v_float = 1.33203587e-11, v_double = 6.9531812532636856e-310, v_pointer = 0x7fff2d6a5590}}}, {g_type = 140733955331496, data = {{
         v_int = 237270203, v_uint = 237270203, v_long = 237270203, v_ulong = 237270203, v_int64 = 237270203, v_uint64 = 237270203, v_float = 2.02707644e-30, 
         v_double = 1.1722705608407867e-315, v_pointer = 0xe2474bb}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, 
         v_pointer = 0x0}}}, {g_type = 47057763093123, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, 
         v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}, {g_type = 1, data = {{
         v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = -2103063832, v_uint = 2191903464, 
         v_long = 47057853598440, v_ulong = 47057853598440, v_int64 = 47057853598440, v_uint64 = 47057853598440, v_float = -2.43610335e-37, v_double = 2.3249668830016086e-310, 
         v_pointer = 0x2acc82a5cae8}}}, {g_type = 47057849190832, data = {{v_int = -2050213464, v_uint = 2244753832, v_long = 47057906448808, v_ulong = 47057906448808, 
         v_int64 = 47057906448808, v_uint64 = 47057906448808, v_float = -1.92052474e-35, v_double = 2.3249694941567285e-310, v_pointer = 0x2acc85cc39a8}, {v_int = 6187083, 
         v_uint = 6187083, v_long = 6187083, v_ulong = 6187083, v_int64 = 6187083, v_uint64 = 6187083, v_float = 8.66994991e-39, v_double = 3.0568251582683972e-317, 
         v_pointer = 0x5e684b}}}, {g_type = 0, data = {{v_int = 2238384, v_uint = 2238384, v_long = 2238384, v_ulong = 2238384, v_int64 = 2238384, v_uint64 = 2238384, 
         v_float = 3.13664406e-39, v_double = 1.1059086366007128e-317, v_pointer = 0x2227b0}, {v_int = 11998288, v_uint = 11998288, v_long = 11998288, v_ulong = 11998288, 
         v_int64 = 11998288, v_uint64 = 11998288, v_float = 1.68131825e-38, v_double = 5.9279419097092783e-317, v_pointer = 0xb71450}}}, {g_type = 47057896778848, data = {{
         v_int = -2059882048, v_uint = 2235085248, v_long = 47057896780224, v_ulong = 47057896780224, v_int64 = 47057896780224, v_uint64 = 47057896780224, 
         v_float = -8.68428594e-36, v_double = 2.3249690164652087e-310, v_pointer = 0x2acc8538b1c0}, {v_int = 10913344, v_uint = 10913344, v_long = 10913344, v_ulong = 10913344, 
         v_int64 = 10913344, v_uint64 = 10913344, v_float = 1.52928522e-38, v_double = 5.3919083516476929e-317, v_pointer = 0xa68640}}}, {g_type = 47057871049664, data = {{
         v_int = -2059882048, v_uint = 2235085248, v_long = 47057896780224, v_ulong = 47057896780224, v_int64 = 47057896780224, v_uint64 = 47057896780224, 
         v_float = -8.68428594e-36, v_double = 2.3249690164652087e-310, v_pointer = 0x2acc8538b1c0}, {v_int = -2059882048, v_uint = 2235085248, v_long = 47057896780224, 
         v_ulong = 47057896780224, v_int64 = 47057896780224, v_uint64 = 47057896780224, v_float = -8.68428594e-36, v_double = 2.3249690164652087e-310, 
         v_pointer = 0x2acc8538b1c0}}}, {g_type = 47057896780224, data = {{v_int = -2102865552, v_uint = 2192101744, v_long = 47057853796720, v_ulong = 47057853796720, 
         v_int64 = 47057853796720, v_uint64 = 47057853796720, v_float = -2.48055926e-37, v_double = 2.3249668927979423e-310, v_pointer = 0x2acc82a8d170}, {v_int = -2062323539, 
         v_uint = 2232643757, v_long = 47057894338733, v_ulong = 47057894338733, v_int64 = 47057894338733, v_uint64 = 47057894338733, v_float = -6.93260206e-36, 
         v_double = 2.3249688958395259e-310, v_pointer = 0x2acc851370ad}}}, {g_type = 47057946274816, data = {{v_int = 0, v_uint = 0, v_long = -69242844270821376, 
         v_ulong = 18377501229438730240, v_int64 = -69242844270821376, v_uint64 = 18377501229438730240, v_float = 0, v_double = -8.9149516117897441e+303, 
         v_pointer = 0xff0a000000000000}, {v_int = -2059882048, v_uint = 2235085248, v_long = 47057896780224, v_ulong = 47057896780224, v_int64 = 47057896780224, 
         v_uint64 = 47057896780224, v_float = -8.68428594e-36, v_double = 2.3249690164652087e-310, v_pointer = 0x2acc8538b1c0}}}, {g_type = 11998288, data = {{v_int = 0, 
         v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 10913344, v_uint = 10913344, v_long = 10913344, 
         v_ulong = 10913344, v_int64 = 10913344, v_uint64 = 10913344, v_float = 1.52928522e-38, v_double = 5.3919083516476929e-317, v_pointer = 0xa68640}}}}
 	free_me = (GValue *) 0x0
 	signal_return_type = 4
 	param_values = (GValue *) 0x7fff2d6a5408
 	node = (SignalNode *) 0xb1c610
 	i = 2
 	n_params = 2
 	__PRETTY_FUNCTION__ = "IA__g_signal_emit_valist"
 #11 0x00002acc84ec6a03 in IA__g_signal_emit (instance=0x0, signal_id=2351983281, detail=13417952) at gsignal.c:2243
 	var_args = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7fff2d6a5750, reg_save_area = 0x7fff2d6a5690}}
 #12 0x00002acc8c936ae5 in gst_type_find_element_activate (pad=0xb715c0) at gsttypefindelement.c:740
 	probability = 40
 	found_caps = (GstCaps *) 0xa6c200
 	typefind = (GstTypeFindElement *) 0x774120
 	__PRETTY_FUNCTION__ = "gst_type_find_element_activate"
 #13 0x00002acc82aa30f8 in gst_pad_set_active (pad=0xb715c0, active=1) at gstpad.c:646
 	old = GST_ACTIVATE_NONE
 	ret = <value optimized out>
 	__PRETTY_FUNCTION__ = "gst_pad_set_active"
 #14 0x00002acc82a8d18b in activate_pads (pad=0x0, ret=0x7fff2d6a5880, active=0xccbde0) at gstelement.c:2354
 No locals.
 #15 0x00002acc82a98343 in gst_iterator_fold (it=0xbd8c60, func=0x2acc82a8d170 <activate_pads>, ret=0x7fff2d6a5880, user_data=0x7fff2d6a58ec) at gstiterator.c:503
 	item = (gpointer) 0xb715c0
 	result = GST_ITERATOR_OK
 #16 0x00002acc82a8cc86 in iterator_activate_fold_with_resync (iter=0xbd8c60, func=0x2acc82a8d170 <activate_pads>, user_data=0x7fff2d6a58ec) at gstelement.c:2386
 	ires = <value optimized out>
 	ret = {g_type = 20, data = {{v_int = 1, v_uint = 1, v_long = 1, v_ulong = 1, v_int64 = 1, v_uint64 = 1, v_float = 1.40129846e-45, v_double = 4.9406564584124654e-324, 
       v_pointer = 0x1}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
 #17 0x00002acc82a8cd66 in gst_element_pads_activate (element=0x774120, active=1) at gstelement.c:2429
 	iter = <value optimized out>
 	res = 1
 	__PRETTY_FUNCTION__ = "gst_element_pads_activate"
 #18 0x00002acc82a8d09c in gst_element_change_state_func (element=0x774120, transition=<value optimized out>) at gstelement.c:2494
 	state = GST_STATE_READY
 	next = GST_STATE_PAUSED
 	result = GST_STATE_CHANGE_FAILURE
 	__PRETTY_FUNCTION__ = "gst_element_change_state_func"
 #19 0x00002acc8c936e7c in gst_type_find_element_change_state (element=0x774120, transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gsttypefindelement.c:767
 	ret = <value optimized out>
 #20 0x00002acc82a89e17 in gst_element_change_state (element=0x0, transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gstelement.c:2275
 	ret = <value optimized out>
 	current = <value optimized out>
 	next = <value optimized out>
 	__PRETTY_FUNCTION__ = "gst_element_change_state"
 #21 0x00002acc82a8c91b in gst_element_set_state_func (element=0x774120, state=GST_STATE_PAUSED) at gstelement.c:2236
 	current = GST_STATE_READY
 	next = 19
 	old_pending = GST_STATE_VOID_PENDING
 	ret = <value optimized out>
 	old_ret = <value optimized out>
 	__PRETTY_FUNCTION__ = "gst_element_set_state_func"
 #22 0x00002acc82a7f18f in gst_bin_change_state_func (element=0xb92de0, transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gstbin.c:1767
 	child = (GstElement *) 0x774120
 	bin = <value optimized out>
 	ret = <value optimized out>
 	current = GST_STATE_READY
 	next = GST_STATE_PAUSED
 	have_async = 1
 	have_no_preroll = 0
 	base_time = 0
 	it = (GstIterator *) 0xbd8b30
 	__PRETTY_FUNCTION__ = "gst_bin_change_state_func"
 #23 0x00002aaaac837505 in gst_decode_bin_change_state (element=0xb92de0, transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gstdecodebin.c:1692
 	ret = <value optimized out>
 	decode_bin = (GstDecodeBin *) 0xb92de0
 	__PRETTY_FUNCTION__ = "gst_decode_bin_change_state"
 #24 0x00002acc82a89e17 in gst_element_change_state (element=0x0, transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gstelement.c:2275
 	ret = <value optimized out>
 	current = <value optimized out>
 	next = <value optimized out>
 	__PRETTY_FUNCTION__ = "gst_element_change_state"
 #25 0x00002acc82a8c91b in gst_element_set_state_func (element=0xb92de0, state=GST_STATE_PAUSED) at gstelement.c:2236
 	current = GST_STATE_READY
 	next = 19
 	old_pending = GST_STATE_VOID_PENDING
 	ret = <value optimized out>
 	old_ret = <value optimized out>
 	__PRETTY_FUNCTION__ = "gst_element_set_state_func"
 #26 0x00002acc82a7f18f in gst_bin_change_state_func (element=0xb5b690, transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gstbin.c:1767
 	child = (GstElement *) 0xb92de0
 	bin = <value optimized out>
 	ret = <value optimized out>
 	current = GST_STATE_READY
 	next = GST_STATE_PAUSED
 	have_async = 0
 	have_no_preroll = 0
 	base_time = 0
 	it = (GstIterator *) 0xbe83c0
 	__PRETTY_FUNCTION__ = "gst_bin_change_state_func"
 #27 0x00002acc82a89e17 in gst_element_change_state (element=0x0, transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gstelement.c:2275
 	ret = <value optimized out>
 	current = <value optimized out>
 	next = <value optimized out>
 	__PRETTY_FUNCTION__ = "gst_element_change_state"
 #28 0x00002acc82a89ef4 in gst_element_change_state (element=0xb5b690, transition=GST_STATE_CHANGE_NULL_TO_READY) at gstelement.c:2308
 	ret = GST_STATE_CHANGE_SUCCESS
 	current = GST_STATE_PAUSED
 	next = <value optimized out>
 	__PRETTY_FUNCTION__ = "gst_element_change_state"
 #29 0x00002acc82a8c91b in gst_element_set_state_func (element=0xb5b690, state=GST_STATE_PAUSED) at gstelement.c:2236
 	current = GST_STATE_NULL
 	next = 10
 	old_pending = GST_STATE_VOID_PENDING
 	ret = <value optimized out>
 	old_ret = <value optimized out>
 	__PRETTY_FUNCTION__ = "gst_element_set_state_func"
 #30 0x00002acc8c302bab in setup_source (play_base_bin=0xae61c0) at gstplaybasebin.c:1960
 	sret = <value optimized out>
 	subbin = (GstElement *) 0xb5b690
 	is_raw = <value optimized out>
 	have_out = <value optimized out>
 	is_dynamic = <value optimized out>
 	__PRETTY_FUNCTION__ = "setup_source"
 #31 0x00002acc8c3036a8 in gst_play_base_bin_change_state (element=0xae61c0, transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gstplaybasebin.c:2511
 	ret = <value optimized out>
 	play_base_bin = (GstPlayBaseBin *) 0xae61c0
 #32 0x00002acc8c2fbd2f in gst_play_bin_change_state (element=0xae61c0, transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gstplaybin.c:1848
 	ret = <value optimized out>
 	play_bin = (GstPlayBin *) 0xae61c0
 	__PRETTY_FUNCTION__ = "gst_play_bin_change_state"
 #33 0x00002acc82a89e17 in gst_element_change_state (element=0x0, transition=GST_STATE_CHANGE_READY_TO_PAUSED) at gstelement.c:2275
 	ret = <value optimized out>
 	current = <value optimized out>
 	next = <value optimized out>
 	__PRETTY_FUNCTION__ = "gst_element_change_state"
 #34 0x00002acc82a89ef4 in gst_element_change_state (element=0xae61c0, transition=GST_STATE_CHANGE_NULL_TO_READY) at gstelement.c:2308
 	ret = GST_STATE_CHANGE_SUCCESS
 	current = GST_STATE_PAUSED
 	next = <value optimized out>
 	__PRETTY_FUNCTION__ = "gst_element_change_state"
 #35 0x00002acc82a8c91b in gst_element_set_state_func (element=0xae61c0, state=GST_STATE_PAUSED) at gstelement.c:2236
 	current = GST_STATE_NULL
 	next = 10
 	old_pending = GST_STATE_VOID_PENDING
 	ret = <value optimized out>
 	old_ret = <value optimized out>
 	__PRETTY_FUNCTION__ = "gst_element_set_state_func"
 #36 0x0000000000439bb1 in bacon_video_widget_open_with_subtitle ()
 #37 0x000000000041c1e1 in totem_action_set_mrl_with_warning ()
 #38 0x000000000041cb89 in totem_action_set_mrl_and_play ()
 #39 0x000000000041d1f7 in totem_action_play_pause ()
 #40 0x000000000041efac in main ()
"
Comment 1 David Schleef 2007-05-13 05:22:50 UTC
Could you provide the media file?
Comment 2 Jan Schmidt 2007-05-23 15:51:45 UTC
I encountered a similar bug coincidentally, accidentally loading an mp3 file as a subtitle. 

The same fix applies, although I can't see if that's actually what happened here.
Comment 3 Jan Schmidt 2007-05-23 15:52:40 UTC
Created attachment 88680 [details] [review]
Don't crash if an unrecognised pad gets produced by decodebin for some reason.
Comment 4 Jan Schmidt 2007-05-24 11:04:21 UTC
Created attachment 88724 [details] [review]
updated patch - fix playbin crash with mp3 suburi 

this patch doesn't leak the pad caps.
Comment 5 Jan Schmidt 2007-05-24 11:16:06 UTC
Fixed in CVS:

2007-05-24  Jan Schmidt  <thaytan@mad.scientist.com>

        * gst/playback/gstplaybasebin.c: (new_decoded_pad_full):
        Handle unknown or invalid pads without crashing, as might occur if
        a media file like an mp3 is specified as a subtitle file.
        Fixes: #410039