From: Guillaume Desmottes Date: Fri, 27 Mar 2015 13:41:51 +0000 (+0100) Subject: mpeg2dec: fix buffer leak in crop_buffer() X-Git-Tag: 1.6.0~66 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ca5fd568624366942d3548003ddc49b7ac2a3ea6;p=platform%2Fupstream%2Fgst-plugins-ugly.git mpeg2dec: fix buffer leak in crop_buffer() gst_buffer_pool_acquire_buffer() gives us a new owned buffer while gst_buffer_replace() reffed it as well so we were one reference extra. https://bugzilla.gnome.org/show_bug.cgi?id=746887 --- diff --git a/ext/mpeg2dec/gstmpeg2dec.c b/ext/mpeg2dec/gstmpeg2dec.c index 3ba28802..1c76cfa6 100644 --- a/ext/mpeg2dec/gstmpeg2dec.c +++ b/ext/mpeg2dec/gstmpeg2dec.c @@ -509,7 +509,9 @@ gst_mpeg2dec_crop_buffer (GstMpeg2dec * dec, GstVideoCodecFrame * in_frame, if (!gst_video_frame_map (&output_frame, info, buffer, GST_MAP_WRITE)) goto map_fail; - gst_buffer_replace (&in_frame->output_buffer, buffer); + if (in_frame->output_buffer) + gst_buffer_unref (in_frame->output_buffer); + in_frame->output_buffer = buffer; if (!gst_video_frame_copy (&output_frame, input_vframe)) goto copy_failed;