[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