diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2019-09-21 18:10:25 +0200 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2019-11-15 12:25:46 +0100 |
commit | 3e5316bf2f5c7b58846d54d05b868e188e6778cf (patch) | |
tree | 4a6be2769a373a81c3b6faa4cf22d290e8e4853c | |
parent | a7e147c85688ab3e16321eaf67e303e2dcf2da46 (diff) | |
download | ffmpeg-3e5316bf2f5c7b58846d54d05b868e188e6778cf.tar.gz |
avcodec/sunrast: Check for availability of maplength before allocating image
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit 711ad71aea7847883662bf95e01640d9745b313b)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | libavcodec/sunrast.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libavcodec/sunrast.c b/libavcodec/sunrast.c index baf184968f..98bc4ffa63 100644 --- a/libavcodec/sunrast.c +++ b/libavcodec/sunrast.c @@ -100,14 +100,14 @@ static int sunrast_decode_frame(AVCodecContext *avctx, void *data, if (ret < 0) return ret; + if (buf_end - buf < maplength) + return AVERROR_INVALIDDATA; + if ((ret = ff_get_buffer(avctx, p, 0)) < 0) return ret; p->pict_type = AV_PICTURE_TYPE_I; - if (buf_end - buf < maplength) - return AVERROR_INVALIDDATA; - if (depth > 8 && maplength) { av_log(avctx, AV_LOG_WARNING, "useless colormap found or file is corrupted, trying to recover\n"); |