mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-13 21:28:01 +02:00
avcodec/pnm_parser: Use memmove() to handle "overread"
This is significantly faster Fixes: Timeout (1sec after this and the previous commit) 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@niedermayer.cc>
This commit is contained in:
parent
8a24d2cc30
commit
34f6d1a7d7
@ -41,8 +41,11 @@ static int pnm_parse(AVCodecParserContext *s, AVCodecContext *avctx,
|
||||
int next = END_NOT_FOUND;
|
||||
int skip = 0;
|
||||
|
||||
for (; pc->overread > 0; pc->overread--) {
|
||||
pc->buffer[pc->index++]= pc->buffer[pc->overread_index++];
|
||||
if (pc->overread > 0) {
|
||||
memmove(pc->buffer + pc->index, pc->buffer + pc->overread_index, pc->overread);
|
||||
pc->index += pc->overread;
|
||||
pc->overread_index += pc->overread;
|
||||
pc->overread = 0;
|
||||
}
|
||||
|
||||
if (pnmpc->remaining_bytes) {
|
||||
|
Loading…
Reference in New Issue
Block a user