[gstreamer-bugs] [Bug 629047] segfault in seek matroskademux

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Sep 8 07:36:15 PDT 2010


https://bugzilla.gnome.org/show_bug.cgi?id=629047
  GStreamer | gst-plugins-good | 0.10.30

--- Comment #4 from Andoni Morales <ylatuya at gmail.com> 2010-09-08 14:36:10 UTC ---
Created an attachment (id=169770)
 View: https://bugzilla.gnome.org/attachment.cgi?id=169770
 Review: https://bugzilla.gnome.org/review?bug=629047&attachment=169770

Unref buffer when not needed anymore

I can reproduce it:

[Cambiando a Thread 0xb7e41b70 (LWP 22644)]
0x006baffc in gst_matroska_demux_search_pos (demux=<value optimized out>,
pad=<value optimized out>, event=0x82a82c8) at matroska-demux.c:2397
2397        cluster_pos = gst_byte_reader_masked_scan_uint32 (&reader,
0xffffffff,
(gdb) bt
#0  0x006baffc in gst_matroska_demux_search_pos (demux=<value optimized out>,
pad=<value optimized out>, event=0x82a82c8) at matroska-demux.c:2397
#1  gst_matroska_demux_handle_seek_event (demux=<value optimized out>,
pad=<value optimized out>, event=0x82a82c8) at matroska-demux.c:2625
#2  0x006bc0f5 in gst_matroska_demux_handle_seek_push (pad=0x81d4e48,
event=0x82a82c8) at matroska-demux.c:2791
#3  gst_matroska_demux_handle_src_event (pad=0x81d4e48, event=0x82a82c8) at
matroska-demux.c:2810
#4  0x001826d3 in gst_pad_send_event (pad=0x81d4e48, event=0x82a82c8) at
gstpad.c:5102
#5  0x00182c4a in gst_pad_push_event (pad=0x81d4998, event=0x82a82c8) at
gstpad.c:4958
#6  0x00790165 in gst_ffmpegdec_src_event (pad=0x81d4a60, event=0x82a82c8) at
gstffmpegdec.c:559
#7  0x001826d3 in gst_pad_send_event (pad=0x81d4a60, event=0x82a82c8) at
gstpad.c:5102
#8  0x011f90fc in gst_navseek_seek (navseek=<value optimized out>,
offset=5000000000) at gstnavseek.c:145
#9  0x011f92b1 in gst_navseek_handle_src_event (pad=0x81d4bf0, event=0x82a82a0)
at gstnavseek.c:213
#10 0x001826d3 in gst_pad_send_event (pad=0x81d4bf0, event=0x82a82a0) at
gstpad.c:5102
#11 0x01207e02 in gst_xvimagesink_navigation_send_event (navigation=0x8200058,
structure=0x82a7d68) at xvimagesink.c:2719
#12 0x00739760 in gst_navigation_send_event (navigation=0x8200058,
structure=0x82a7d68) at navigation.c:117
#13 0x00739909 in gst_navigation_send_key_event (navigation=0x8200058,
event=0x120f7e0 "key-press", key=0x12c3824 "Right") at navigation.c:133
#14 0x0120bd34 in gst_xvimagesink_handle_xevents (xvimagesink=0x8200058) at
xvimagesink.c:1261
#15 gst_xvimagesink_event_thread (xvimagesink=0x8200058) at xvimagesink.c:1652
#16 0x002a8def in ?? () from /lib/libglib-2.0.so.0
#17 0x0031f96e in start_thread (arg=0xb7e41b70) at pthread_create.c:300
#18 0x00400a4e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130




buf is unreffed after 'if(cluster_pos >=0)' but then, you can go back to
resume, which will use GST_BUFFER_SIZE(buf).
I have tried the following patch but then it triggers 
'g_assert(id==GST_MATROSKA_ID_CLUSTER)'

-- 
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