[Bug 773093] New: basetransform: Fix race when toggling passthrough
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Mon Oct 17 12:17:29 UTC 2016
https://bugzilla.gnome.org/show_bug.cgi?id=773093
Bug ID: 773093
Summary: basetransform: Fix race when toggling passthrough
Classification: Platform
Product: GStreamer
Version: unspecified
OS: All
Status: NEW
Severity: normal
Priority: Normal
Component: gstreamer (core)
Assignee: gstreamer-bugs at lists.freedesktop.org
Reporter: stian.selnes at gmail.com
QA Contact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
This fixes a race where priv->passthrough is changed from TRUE to FALSE
while processing a buffer and we end up passing a non-writable buffer to
transform_ip(). More precicely if passthrough is changed just after
prepare_output_buffer() is finished.
Since priv->passthrough and other priv variables are accessed throughout
the chain function a lock is introduced and held while processing the
buffer, but released before pushing downstream. Since sub-classes may
call is_passthrough() and similar functions during for instance
transform_ip() a recursive lock is needed.
--
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