From 0cb63ea722b4677808f3518b0baec3998874e1a9 Mon Sep 17 00:00:00 2001 From: Uoti Urpala Date: Wed, 2 Feb 2011 09:13:14 +0200 Subject: ad_ffmpeg: add missing extradata padding One of two alternative code parts passing codec extradata to libavcodec didn't add the buffer padding that libavcodec requires, resulting in invalid reads beoynd allocated memory area. Fix. --- libmpcodecs/ad_ffmpeg.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libmpcodecs/ad_ffmpeg.c b/libmpcodecs/ad_ffmpeg.c index d2f329c645..ec6a2f77ac 100644 --- a/libmpcodecs/ad_ffmpeg.c +++ b/libmpcodecs/ad_ffmpeg.c @@ -141,7 +141,8 @@ static int init(sh_audio_t *sh_audio) // for QDM2 if (sh_audio->codecdata_len && sh_audio->codecdata && !lavc_context->extradata) { - lavc_context->extradata = av_malloc(sh_audio->codecdata_len); + lavc_context->extradata = av_malloc(sh_audio->codecdata_len + + FF_INPUT_BUFFER_PADDING_SIZE); lavc_context->extradata_size = sh_audio->codecdata_len; memcpy(lavc_context->extradata, (char *)sh_audio->codecdata, lavc_context->extradata_size); -- cgit v1.2.3