summaryrefslogtreecommitdiff
path: root/gst
diff options
context:
space:
mode:
authorJames Stevenson <james@stev.org>2017-09-22 08:10:44 +0100
committerTim-Philipp Müller <tim@centricular.com>2017-09-22 08:46:10 +0100
commit9d5d9897e5911e2e2916f0cf83a0f473a2290b7b (patch)
treea8f034c172b707b4db89d141d4cb7edc20813ba5 /gst
parent980ddfdfb740107ce8d9db3f8679d235af757412 (diff)
downloadgstreamer-plugins-bad-9d5d9897e5911e2e2916f0cf83a0f473a2290b7b.tar.gz
autoconvert: Fix two memory leaks on error conditions
Both the sink_chain and sink_chain_list will neither pass or free the buffer if the internal src pad doesn't exist yet. https://bugzilla.gnome.org/show_bug.cgi?id=788035
Diffstat (limited to 'gst')
-rw-r--r--gst/autoconvert/gstautoconvert.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gst/autoconvert/gstautoconvert.c b/gst/autoconvert/gstautoconvert.c
index bed5e88e7..5d3d565af 100644
--- a/gst/autoconvert/gstautoconvert.c
+++ b/gst/autoconvert/gstautoconvert.c
@@ -923,6 +923,7 @@ gst_auto_convert_sink_chain (GstPad * pad, GstObject * parent,
} else {
GST_ERROR_OBJECT (autoconvert, "Got buffer without an negotiated element,"
" returning not-negotiated");
+ gst_buffer_unref (buffer);
}
return ret;
@@ -944,6 +945,7 @@ gst_auto_convert_sink_chain_list (GstPad * pad, GstObject * parent,
} else {
GST_ERROR_OBJECT (autoconvert, "Got buffer without an negotiated element,"
" returning not-negotiated");
+ gst_buffer_list_unref (list);
}
return ret;