deinterleave: fix caps leak
authorThiago Santos <thiagoss@osg.samsung.com>
Wed, 30 Sep 2015 12:05:03 +0000 (09:05 -0300)
committerThiago Santos <thiagoss@osg.samsung.com>
Wed, 30 Sep 2015 15:47:52 +0000 (12:47 -0300)
Caps from the pad template are being leaked. In any case it is
from a static pad template and will 'leak' in the end, just doing
the cleanup for the good practice.

gst/interleave/deinterleave.c

index f7c0c942154fae80d4626c5c2496ea9cd7d7e7fe..c3373450b13f1e52182ceac3741c2b42c8933438 100644 (file)
@@ -520,8 +520,10 @@ gst_deinterleave_sink_getcaps (GstPad * pad, GstObject * parent,
   for (l = GST_ELEMENT (self)->pads; l != NULL; l = l->next) {
     GstPad *ourpad = GST_PAD (l->data);
     GstCaps *peercaps = NULL, *ourcaps;
+    GstCaps *templ_caps = gst_pad_get_pad_template_caps (ourpad);
 
-    ourcaps = gst_caps_copy (gst_pad_get_pad_template_caps (ourpad));
+    ourcaps = gst_caps_copy (templ_caps);
+    gst_caps_unref (templ_caps);
 
     if (pad == ourpad) {
       if (GST_PAD_DIRECTION (pad) == GST_PAD_SINK)