diff --git a/libavcodec/indeo5.c b/libavcodec/indeo5.c index dc5f6f09ad..7a60f49621 100644 --- a/libavcodec/indeo5.c +++ b/libavcodec/indeo5.c @@ -520,6 +520,12 @@ static int decode_mb_info(IVI45DecContext *ctx, IVIBandDesc *band, mv_x += IVI_TOSIGNED(mv_delta); mb->mv_x = mv_x; mb->mv_y = mv_y; + if (mv_x < 0 || mv_y < 0) { + av_log(avctx, AV_LOG_ERROR, "Invalid MV %d %d\n", + mv_x, mv_y); + mb->mv_x = mb->mv_y = 0; + return AVERROR_INVALIDDATA; + } } } }