[FFmpeg-cvslog] avcodec/parser: Optimize ff_combine_frame() with massivly negative next
Michael Niedermayer
git at videolan.org
Fri Aug 23 23:31:59 EEST 2019
ffmpeg | branch: master | Michael Niedermayer <michael at niedermayer.cc> | Thu Aug 1 22:18:43 2019 +0200| [8a24d2cc304c7f0807bc472dfc39d247040d71c2] | committer: Michael Niedermayer
avcodec/parser: Optimize ff_combine_frame() with massivly negative next
Fixes: Timeout
Fixes: 15558/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PPM_fuzzer-5705273643106304
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=8a24d2cc304c7f0807bc472dfc39d247040d71c2
---
libavcodec/parser.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/libavcodec/parser.c b/libavcodec/parser.c
index 3e19810a94..a63f532c48 100644
--- a/libavcodec/parser.c
+++ b/libavcodec/parser.c
@@ -295,6 +295,10 @@ int ff_combine_frame(ParseContext *pc, int next,
*buf = pc->buffer;
}
+ if (next < -8) {
+ pc->overread += -8 - next;
+ next = -8;
+ }
/* store overread bytes */
for (; next < 0; next++) {
pc->state = pc->state << 8 | pc->buffer[pc->last_index + next];
More information about the ffmpeg-cvslog
mailing list