[0.11] gst-plugins-bad: resindvd: fix caps refcount error

Sebastian Dröge slomo at kemper.freedesktop.org
Wed Jan 25 04:24:02 PST 2012


Module: gst-plugins-bad
Branch: 0.11
Commit: 4a1ce3f8d2d4df8d80650dd53f7b47c436bcdae7
URL:    http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=4a1ce3f8d2d4df8d80650dd53f7b47c436bcdae7

Author: Vincent Penquerc'h <vincent.penquerch at collabora.co.uk>
Date:   Mon Jan 23 22:20:40 2012 +0000

resindvd: fix caps refcount error

/me bad monkey.

---

 ext/resindvd/rsndec.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/ext/resindvd/rsndec.c b/ext/resindvd/rsndec.c
index e826640..4c20183 100644
--- a/ext/resindvd/rsndec.c
+++ b/ext/resindvd/rsndec.c
@@ -256,8 +256,9 @@ _get_decoder_factories (gpointer arg)
   raw_audio = gst_caps_can_intersect (raw, ctx.desired_caps);
   if (raw_audio) {
     GstCaps *sub = gst_caps_subtract (ctx.desired_caps, raw);
-    gst_caps_unref (ctx.desired_caps);
     ctx.desired_caps = sub;
+  } else {
+    gst_caps_ref (ctx.desired_caps);
   }
   gst_caps_unref (raw);
 
@@ -289,6 +290,7 @@ _get_decoder_factories (gpointer arg)
 
   GST_DEBUG ("Available decoder caps %" GST_PTR_FORMAT, ctx.decoder_caps);
   gst_caps_unref (ctx.decoder_caps);
+  gst_caps_unref (ctx.desired_caps);
 
   return factories;
 }



More information about the gstreamer-commits mailing list