diff --git a/libavcodec/shorten.c b/libavcodec/shorten.c index 2d3540a229..b785284aa2 100644 --- a/libavcodec/shorten.c +++ b/libavcodec/shorten.c @@ -661,6 +661,10 @@ static int shorten_decode_frame(AVCodecContext *avctx, void *data, * of get_sr_golomb_shorten(). */ if (s->version == 0) residual_size--; + if (residual_size > 30U) { + av_log(avctx, AV_LOG_ERROR, "residual size unsupportd: %d\n", residual_size); + return AVERROR_INVALIDDATA; + } } /* calculate sample offset using means from previous blocks */