[FFmpeg-cvslog] adx_parser: Fix infinite loop.

Michael Niedermayer git at videolan.org
Sun Dec 18 20:54:22 CET 2011


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Sun Dec 18 18:57:56 2011 +0100| [3bf1d787b58cf268f3c055d6f2509fd75258450b] | committer: Michael Niedermayer

adx_parser: Fix infinite loop.

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

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

 libavcodec/adx_parser.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/libavcodec/adx_parser.c b/libavcodec/adx_parser.c
index ebcb137..f5d7989 100644
--- a/libavcodec/adx_parser.c
+++ b/libavcodec/adx_parser.c
@@ -56,7 +56,6 @@ static int adx_parse(AVCodecParserContext *s1,
             if (ret = avpriv_adx_decode_header(avctx, pc->buffer, pc->index,
                                                &s->header_size, NULL))
                 return AVERROR_INVALIDDATA;
-            s->block_size = BLOCK_SIZE * avctx->channels;
         }
         if (s->header_size && s->header_size <= pc->index) {
             avctx->extradata = av_mallocz(s->header_size + FF_INPUT_BUFFER_PADDING_SIZE);
@@ -71,6 +70,7 @@ static int adx_parse(AVCodecParserContext *s1,
         *poutbuf_size = 0;
         return buf_size;
     }
+    s->block_size = BLOCK_SIZE * avctx->channels;
 
     if (pc->index - s->buf_pos >= s->block_size) {
         *poutbuf      = &pc->buffer[s->buf_pos];



More information about the ffmpeg-cvslog mailing list