[FFmpeg-cvslog] flac_parser: fix fifo ptr wrap check
Michael Niedermayer
git at videolan.org
Sat Sep 22 04:57:33 CEST 2012
ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Sat Sep 22 04:40:10 2012 +0200| [8d45c001a8e92a6fee768a7e7bcc1bfe09120838] | committer: Michael Niedermayer
flac_parser: fix fifo ptr wrap check
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=8d45c001a8e92a6fee768a7e7bcc1bfe09120838
---
libavcodec/flac_parser.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/libavcodec/flac_parser.c b/libavcodec/flac_parser.c
index 17b96e2..e37ca64 100644
--- a/libavcodec/flac_parser.c
+++ b/libavcodec/flac_parser.c
@@ -606,10 +606,11 @@ static int flac_parse(AVCodecParserContext *s, AVCodecContext *avctx,
/* restore the state pre-padding */
if (fpc->end_padded) {
+ int warp = fpc->fifo_buf->wptr - fpc->fifo_buf->buffer < MAX_FRAME_HEADER_SIZE;
/* HACK: drain the tail of the fifo */
fpc->fifo_buf->wptr -= MAX_FRAME_HEADER_SIZE;
fpc->fifo_buf->wndx -= MAX_FRAME_HEADER_SIZE;
- if (fpc->fifo_buf->wptr < 0) {
+ if (warp) {
fpc->fifo_buf->wptr += fpc->fifo_buf->end -
fpc->fifo_buf->buffer;
}
More information about the ffmpeg-cvslog
mailing list