diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2018-10-02 03:04:52 +0200 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2018-10-03 11:14:40 +0200 |
commit | f515c978f63f818d22d94eac9b6ba47f762e6ad9 (patch) | |
tree | f69a06231306c9da02b8a4b4cfd6e6490662a647 /libavcodec/rasc.c | |
parent | 9a9034958aec8c30ee898db23cb691863801ea1f (diff) |
avcodec/rasc: unref both frames on reinit
Fixes: integer overflow
Fixes: inconsistent frame dimensions
Fixes: 10454/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_RASC_fuzzer-5656301162463232
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/rasc.c')
-rw-r--r-- | libavcodec/rasc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/rasc.c b/libavcodec/rasc.c index eb021681c6..e8e0740ddd 100644 --- a/libavcodec/rasc.c +++ b/libavcodec/rasc.c @@ -95,10 +95,10 @@ static int init_frames(AVCodecContext *avctx) int ret; av_frame_unref(s->frame1); + av_frame_unref(s->frame2); if ((ret = ff_get_buffer(avctx, s->frame1, 0)) < 0) return ret; - av_frame_unref(s->frame2); if ((ret = ff_get_buffer(avctx, s->frame2, 0)) < 0) return ret; |