[FFmpeg-cvslog] wavpack: fix out of array access

Michael Niedermayer git at videolan.org
Mon Dec 3 21:14:38 CET 2012


ffmpeg | branch: release/1.0 | Michael Niedermayer <michaelni at gmx.at> | Mon Nov 12 14:42:45 2012 +0100| [c51c5f83c13b0fa3e332e59bf764fdc598476b2e] | committer: Michael Niedermayer

wavpack: fix out of array access

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
(cherry picked from commit be818df547c3b0ae4fadb50fd210139a8636706a)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c51c5f83c13b0fa3e332e59bf764fdc598476b2e
---

 libavcodec/wavpack.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/libavcodec/wavpack.c b/libavcodec/wavpack.c
index ef4fc4f..4be84c7 100644
--- a/libavcodec/wavpack.c
+++ b/libavcodec/wavpack.c
@@ -1206,11 +1206,12 @@ static int wavpack_decode_frame(AVCodecContext *avctx, void *data,
     }
 
     /* get output buffer */
-    s->frame.nb_samples = s->samples;
+    s->frame.nb_samples = s->samples + 1;
     if ((ret = avctx->get_buffer(avctx, &s->frame)) < 0) {
         av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");
         return ret;
     }
+    s->frame.nb_samples = s->samples;
 
     while (buf_size > 0) {
         if (!s->multichannel) {



More information about the ffmpeg-cvslog mailing list