GNOME Bugzilla – Bug 442706
[dvdsubdec] crashes when flushing/on seek
Last modified: 2007-05-31 22:34:55 UTC
As dvdsubdec receives FLUSH_START, it performs some reset/clear (freeing buffers, etc). However, as FLUSH_START is not a serialized event, the streaming thread (in chain) may very well concurrently still be using those resources (hence segfault).
Created attachment 89137 [details] [review] Simple possible patch * Perform reset when receiving (serialized) FLUSH_STOP (rather than FLUSH_START)
Nice catch, makes sense: 2007-05-31 Tim-Philipp Müller <tim at centricular dot net> Patch by: Mark Nauwelaerts <manauw at skynet be> * gst/dvdsub/gstdvdsubdec.c: (gst_dvd_sub_dec_sink_event): Clear state when handling the serialized FLUSH_STOP event instead of the FLUSH_START event, thereby making sure we don't free buffers the chain function is still processing. Fixes dvdsubdec crashing when flushing/seeking (#442706). Thanks for the patch!