From c1d5aa3da560db98a28474916c12d137c706d70d Mon Sep 17 00:00:00 2001 From: Sebastian Rasmussen Date: Sat, 9 Aug 2014 13:17:17 +0200 Subject: [PATCH] amcvideoenc: Avoid leaking copy of caps object gst_pad_get_pad_template_caps() returns a reference which is unreferenced, so creating a copy using gst_caps_copy() results in a reference leak. Also remove the incorrect comment to avoid confusion in the future. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734533 --- sys/androidmedia/gstamcvideoenc.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/sys/androidmedia/gstamcvideoenc.c b/sys/androidmedia/gstamcvideoenc.c index b85a4e2694..3a0a7a1af1 100644 --- a/sys/androidmedia/gstamcvideoenc.c +++ b/sys/androidmedia/gstamcvideoenc.c @@ -1288,11 +1288,8 @@ gst_amc_video_enc_set_format (GstVideoEncoder * encoder, allowed_caps = gst_pad_get_allowed_caps (GST_VIDEO_ENCODER_SRC_PAD (encoder)); if (!allowed_caps) { GST_DEBUG_OBJECT (self, "... but no peer, using template caps"); - /* we need to copy because get_allowed_caps returns a ref, and - * get_pad_template_caps doesn't */ allowed_caps = - gst_caps_copy (gst_pad_get_pad_template_caps (GST_VIDEO_ENCODER_SRC_PAD - (encoder))); + gst_pad_get_pad_template_caps (GST_VIDEO_ENCODER_SRC_PAD (encoder)); } GST_DEBUG_OBJECT (self, "chose caps %" GST_PTR_FORMAT, allowed_caps); allowed_caps = gst_caps_truncate (allowed_caps);