From 5484dad7f6122a4d4dbc28e867a8c71d22ba2297 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Reimar=20D=C3=B6ffinger?= Date: Sun, 21 Jan 2007 09:55:28 +0000 Subject: [PATCH] Fix crash when pred_order greater s->blocksize >> rice_order. Fixes http://sam.zoy.org/zzuf/lol-mplayer.flac Originally committed as revision 7595 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/flac.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavcodec/flac.c b/libavcodec/flac.c index e704d990e3..1016ed47f6 100644 --- a/libavcodec/flac.c +++ b/libavcodec/flac.c @@ -225,6 +225,10 @@ static int decode_residuals(FLACContext *s, int channel, int pred_order) rice_order = get_bits(&s->gb, 4); samples= s->blocksize >> rice_order; + if (pred_order > samples) { + av_log(s->avctx, AV_LOG_ERROR, "invalid predictor order: %i > %i\n", pred_order, samples); + return -1; + } sample= i= pred_order;