[Bug 725298] New: dashdemux: fails after MPD refresh
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Thu Feb 27 01:49:26 PST 2014
https://bugzilla.gnome.org/show_bug.cgi?id=725298
GStreamer | gst-plugins-bad | git
Summary: dashdemux: fails after MPD refresh
Classification: Platform
Product: GStreamer
Version: git
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gst-plugins-bad
AssignedTo: gstreamer-bugs at lists.freedesktop.org
ReportedBy: floobleflam at gmail.com
QAContact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
Created an attachment (id=270451)
View: https://bugzilla.gnome.org/attachment.cgi?id=270451
Review: https://bugzilla.gnome.org/review?bug=725298&attachment=270451
Fix segfault on MPD refresh
A segfault can occur when an MPD is refreshed after the time specified in the
minimumUpdatePeriod MPD attribute.
The reason for the segfault is that a new GstMpdClient is created for the
updated MPD, and demux->client is swapped for this new GstMpdClient without
first acquiring dashdemux's client lock (hence code in other threads accessing
demux->client at the same time may try to access the freed GstMpdClient).
The attached patch fixes the segfault by surrounding the lines that perform the
client swap with GST_DASH_DEMUX_CLIENT_LOCK/UNLOCK, but note that this does not
really fix the problem: now the client just sits there without downloading any
more segments following the MPD refresh.
--
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