From c152c98327ae10cefa2bb33514a1c447f1f2a9ee Mon Sep 17 00:00:00 2001 From: Zdenek Kabelac Date: Tue, 23 Oct 2001 19:03:33 +0000 Subject: [PATCH] * simple fix to avoid memcpy with len < 0 Originally committed as revision 180 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/mpegaudiodec.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libavcodec/mpegaudiodec.c b/libavcodec/mpegaudiodec.c index ca610d65ef..80a145b82f 100644 --- a/libavcodec/mpegaudiodec.c +++ b/libavcodec/mpegaudiodec.c @@ -2268,11 +2268,13 @@ static int decode_frame(AVCodecContext * avctx, len = HEADER_SIZE - len; if (len > buf_size) len = buf_size; + else if (len > 0) { memcpy(s->inbuf_ptr, buf_ptr, len); buf_ptr += len; - s->inbuf_ptr += len; buf_size -= len; - if ((s->inbuf_ptr - s->inbuf) == HEADER_SIZE) { + s->inbuf_ptr += len; + } + if ((s->inbuf_ptr - s->inbuf) >= HEADER_SIZE) { got_header: header = (s->inbuf[0] << 24) | (s->inbuf[1] << 16) | (s->inbuf[2] << 8) | s->inbuf[3];