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 791193 - GstElement::request_new_pad() is racy
GstElement::request_new_pad() is racy
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
unspecified
Other Linux
: Normal major
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2017-12-04 09:03 UTC by Sebastian Dröge (slomo)
Modified: 2018-11-03 12:43 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Sebastian Dröge (slomo) 2017-12-04 09:03:49 UTC
Currently the subclass is expected to return an unowned (transfer none) pad reference, which is assumed to be owned by the element. The caller (gst_element_get_request_pad() / gst_element_request_pad()) is directly calling gst_object_ref().

But there's a small window in which the pad could be removed from the element again before the gst_object_ref(), causing an invalid pointer to freed memory to be returned to the caller.


I don't see how we can fix this in 1.0 without adding a new vfunc that has the return value as (transfer full).
Comment 1 GStreamer system administrator 2018-11-03 12:43:09 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/257.