aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2019-09-21 18:10:25 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2019-11-15 12:25:46 +0100
commit3e5316bf2f5c7b58846d54d05b868e188e6778cf (patch)
tree4a6be2769a373a81c3b6faa4cf22d290e8e4853c
parenta7e147c85688ab3e16321eaf67e303e2dcf2da46 (diff)
downloadffmpeg-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.c6
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");