From: Martin Storsjö Date: Thu, 19 Sep 2013 13:49:48 +0000 (+0300) Subject: yop: Clear all references to the AVBuffer in the local AVPacket X-Git-Tag: n2.1~57^2~225 X-Git-Url: https://git.videolan.org/?p=ffmpeg.git;a=commitdiff_plain;h=d8b68660145c76a23fc9665f96932449514ecad2;hp=3185a80259ce1f8f8111073dbd14a69a396e03a3 yop: Clear all references to the AVBuffer in the local AVPacket This makes sure that it doesn't try to free an AVBuffer belonging to an earlier packet when we free the local packet at the end. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö --- diff --git a/libavformat/yop.c b/libavformat/yop.c index 5fe6bdc7d4..8caeb07157 100644 --- a/libavformat/yop.c +++ b/libavformat/yop.c @@ -127,6 +127,12 @@ static int yop_read_packet(AVFormatContext *s, AVPacket *pkt) if (yop->video_packet.data) { *pkt = yop->video_packet; yop->video_packet.data = NULL; + yop->video_packet.buf = NULL; +#if FF_API_DESTRUCT_PACKET +FF_DISABLE_DEPRECATION_WARNINGS + yop->video_packet.destruct = NULL; +FF_ENABLE_DEPRECATION_WARNINGS +#endif yop->video_packet.size = 0; pkt->data[0] = yop->odd_frame; pkt->flags |= AV_PKT_FLAG_KEY;