From: Mark Nauwelaerts Date: Tue, 10 Apr 2012 15:22:04 +0000 (+0200) Subject: mplex: avoid leaking pad template caps and superfluous copy X-Git-Tag: RELEASE-0.11.90~7 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a38bf7788d0650868302a73d1809d590d13a44be;p=platform%2Fupstream%2Fgst-plugins-bad.git mplex: avoid leaking pad template caps and superfluous copy --- diff --git a/ext/mplex/gstmplex.cc b/ext/mplex/gstmplex.cc index a08d683..d548f78 100644 --- a/ext/mplex/gstmplex.cc +++ b/ext/mplex/gstmplex.cc @@ -276,7 +276,7 @@ gst_mplex_setcaps (GstPad * pad, GstCaps * caps) JobStream *jobstream; GstMplexIBitStream *inputstream; GstMplexPad *mpad; - GstCaps *othercaps; + GstCaps *othercaps, *templ; gboolean ret = TRUE; mplex = GST_MPLEX (GST_PAD_PARENT (pad)); @@ -286,14 +286,16 @@ gst_mplex_setcaps (GstPad * pad, GstCaps * caps) goto refuse_renegotiation; /* since muxer does not really check much ... */ - othercaps = gst_caps_intersect (caps, gst_pad_get_pad_template_caps (pad)); + templ = gst_pad_get_pad_template_caps (pad); + othercaps = gst_caps_intersect (caps, templ); + gst_caps_unref (templ); if (othercaps) gst_caps_unref (othercaps); else goto refuse_caps; /* set the fixed template caps on the srcpad, should accept without objection */ - othercaps = gst_caps_copy (gst_pad_get_pad_template_caps (mplex->srcpad)); + othercaps = gst_pad_get_pad_template_caps (mplex->srcpad); ret = gst_pad_set_caps (mplex->srcpad, othercaps); gst_caps_unref (othercaps); if (!ret)