1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-03-03 14:32:16 +02:00

avcodec/scpr: make sure count and min are valid

This commit is contained in:
Paul B Mahol 2018-09-07 15:09:40 +02:00
parent 70a708713a
commit cc24665f44

View File

@ -529,7 +529,7 @@ static int decompress_p(AVCodecContext *avctx,
return ret;
max += temp << 8;
if (min > max)
if (min > max || min >= s->nbcount)
return AVERROR_INVALIDDATA;
memset(s->blocks, 0, sizeof(*s->blocks) * s->nbcount);
@ -541,6 +541,8 @@ static int decompress_p(AVCodecContext *avctx,
ret |= decode_value(s, s->count_model, 256, 20, &count);
if (ret < 0)
return ret;
if (count <= 0)
return AVERROR_INVALIDDATA;
while (min < s->nbcount && count-- > 0) {
s->blocks[min++] = fill;