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 753151 - gstpad: fix invalid object unref
gstpad: fix invalid object unref
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other Linux
: Normal normal
: 1.5.90
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-08-02 15:44 UTC by George Kiagiadakis
Modified: 2015-08-16 13:38 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
gstpad: fix invalid object unref (930 bytes, patch)
2015-08-02 15:44 UTC, George Kiagiadakis
committed Details | Review

Description George Kiagiadakis 2015-08-02 15:44:55 UTC
Created attachment 308633 [details] [review]
gstpad: fix invalid object unref

In case there is an IDLE probe fired from gst_pad_push_data and it
doesn't return GST_FLOW_OK, the code jumps to the probe_stopped
label which tries to unref the data object. However, at this point
the data object belongs downstream and must not be touched.
By setting data = NULL, the code skips this unref.
Comment 1 Tim-Philipp Müller 2015-08-04 10:12:45 UTC
commit 794a08d7e9e4d1fc483c1fac49369f5aef964ba9
Author: George Kiagiadakis <george.kiagiadakis@collabora.com>
Date:   Sun Aug 2 17:38:14 2015 +0200

    pad: fix invalid unref after IDLE probe on non-OK flow return
    
    In case there is an IDLE probe fired from gst_pad_push_data and it
    doesn't return GST_FLOW_OK, the code jumps to the probe_stopped
    label which tries to unref the data object. However, at this point
    the data object belongs downstream and must not be touched.
    By setting data = NULL, the code skips this unref.
    
    https://bugzilla.gnome.org//show_bug.cgi?id=753151