diff options
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/scpr.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libavcodec/scpr.c b/libavcodec/scpr.c index b87c047..46f072c 100644 --- a/libavcodec/scpr.c +++ b/libavcodec/scpr.c @@ -261,6 +261,9 @@ static int decode_unit(SCPRContext *s, PixelModel *pixel, unsigned step, unsigne break; c++; } + if (x >= 16 || c >= 256) { + return AVERROR_INVALIDDATA; + } if ((ret = s->decode(gb, rc, cumfr, cnt_c, totfr)) < 0) return ret; |