summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVincent Penquerc'h <vincent.penquerch@collabora.co.uk>2012-01-23 22:20:40 +0000
committerVincent Penquerc'h <vincent.penquerch@collabora.co.uk>2012-01-23 22:20:40 +0000
commit4a1ce3f8d2d4df8d80650dd53f7b47c436bcdae7 (patch)
tree0fbad11d535cc7dc613e605b6b9f110bcc792b35
parent9feea330bb94565b219c983fd7b61840044f10b9 (diff)
resindvd: fix caps refcount error
/me bad monkey.
-rw-r--r--ext/resindvd/rsndec.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/ext/resindvd/rsndec.c b/ext/resindvd/rsndec.c
index e82664057..4c2018362 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;
}