From 669cc0f364d69aa9bd0153eb2f926abdd5d59575 Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Sun, 10 Mar 2013 17:56:35 +0100 Subject: [PATCH 1/2] lavc: fix get_buffer() compatibility layer for audio. planes - FF_ARRAY_ELEMS would be evaluated as unsigned and underflow instead of being negative as was intended. --- libavcodec/utils.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 13efea44c2..0106b91200 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -687,7 +687,7 @@ do { \ for (i = 0; i < FFMIN(planes, FF_ARRAY_ELEMS(frame->buf)); i++) WRAP_PLANE(frame->buf[i], frame->extended_data[i], frame->linesize[0]); - for (i = 0; i < planes - FF_ARRAY_ELEMS(frame->buf); i++) + for (i = 0; i < frame->nb_extended_buf; i++) WRAP_PLANE(frame->extended_buf[i], frame->extended_data[i + FF_ARRAY_ELEMS(frame->buf)], frame->linesize[0]); From e3232f34312f8187094c875445683277ed0c209d Mon Sep 17 00:00:00 2001 From: Janne Grunau Date: Sun, 10 Mar 2013 21:30:54 +0100 Subject: [PATCH 2/2] svq1: use av_frame_free to free refcounted frame Fixes a memleak due to avcodec_free_frame not freeing the frame data. --- libavcodec/svq1dec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/svq1dec.c b/libavcodec/svq1dec.c index c5d56ee75f..d9e6f7ea45 100644 --- a/libavcodec/svq1dec.c +++ b/libavcodec/svq1dec.c @@ -793,7 +793,7 @@ static av_cold int svq1_decode_end(AVCodecContext *avctx) { SVQ1Context *s = avctx->priv_data; - avcodec_free_frame(&s->prev); + av_frame_free(&s->prev); return 0; }