Browse Source

avcodec/sanm: Optimize fill_frame() with av_memcpy_backptr()

Fixes: Timeout (76 sec -> 24 sec)
Fixes: 15043/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_SANM_fuzzer-5699856238116864

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
tags/n4.2
Michael Niedermayer 6 years ago
parent
commit
936ca7f101
1 changed files with 3 additions and 1 deletions
  1. +3
    -1
      libavcodec/sanm.c

+ 3
- 1
libavcodec/sanm.c View File

@@ -1358,8 +1358,10 @@ static int read_frame_header(SANMVideoContext *ctx, SANMFrameHeader *hdr)

static void fill_frame(uint16_t *pbuf, int buf_size, uint16_t color)
{
while (buf_size--)
if (buf_size--) {
*pbuf++ = color;
av_memcpy_backptr((uint8_t*)pbuf, 2, 2*buf_size);
}
}

static int copy_output(SANMVideoContext *ctx, SANMFrameHeader *hdr)


Loading…
Cancel
Save