[gst-cvs] gst-plugins-base: audiofilter: don't leak pad-template
Stefan Kost
ensonic at kemper.freedesktop.org
Tue Apr 7 12:53:46 PDT 2009
Module: gst-plugins-base
Branch: master
Commit: ff9ee1dc5ac0c18e0f886663a7bcd5dd063f3f25
URL: http://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=ff9ee1dc5ac0c18e0f886663a7bcd5dd063f3f25
Author: Stefan Kost <ensonic at users.sf.net>
Date: Tue Apr 7 22:38:29 2009 +0300
audiofilter: don't leak pad-template
gst_element_class_add_pad_template() does not take ownership.
---
gst-libs/gst/audio/gstaudiofilter.c | 15 +++++++++------
1 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/gst-libs/gst/audio/gstaudiofilter.c b/gst-libs/gst/audio/gstaudiofilter.c
index 9c329bf..7d21e14 100644
--- a/gst-libs/gst/audio/gstaudiofilter.c
+++ b/gst-libs/gst/audio/gstaudiofilter.c
@@ -220,16 +220,19 @@ gst_audio_filter_class_add_pad_templates (GstAudioFilterClass * klass,
const GstCaps * allowed_caps)
{
GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
+ GstPadTemplate *pad_template;
g_return_if_fail (GST_IS_AUDIO_FILTER_CLASS (klass));
g_return_if_fail (allowed_caps != NULL);
g_return_if_fail (GST_IS_CAPS (allowed_caps));
- gst_element_class_add_pad_template (element_class,
- gst_pad_template_new ("src", GST_PAD_SRC, GST_PAD_ALWAYS,
- gst_caps_copy (allowed_caps)));
+ pad_template = gst_pad_template_new ("src", GST_PAD_SRC, GST_PAD_ALWAYS,
+ gst_caps_copy (allowed_caps));
+ gst_element_class_add_pad_template (element_class, pad_template);
+ gst_object_unref (pad_template);
- gst_element_class_add_pad_template (element_class,
- gst_pad_template_new ("sink", GST_PAD_SINK, GST_PAD_ALWAYS,
- gst_caps_copy (allowed_caps)));
+ pad_template = gst_pad_template_new ("sink", GST_PAD_SINK, GST_PAD_ALWAYS,
+ gst_caps_copy (allowed_caps));
+ gst_element_class_add_pad_template (element_class, pad_template);
+ gst_object_unref (pad_template);
}
More information about the Gstreamer-commits
mailing list