# HG changeset patch # User reimar # Date 1139595712 0 # Node ID befc16265bb1d28a1441a1af5fabece06001312f # Parent 65530e552f6f813dd0854956d40a5c7a2934c5a0 Make sure maxlen is respected, instead of just failing the assert later on. diff -r 65530e552f6f -r befc16265bb1 libmpcodecs/ad_liba52.c --- a/libmpcodecs/ad_liba52.c Fri Feb 10 18:18:24 2006 +0000 +++ b/libmpcodecs/ad_liba52.c Fri Feb 10 18:21:52 2006 +0000 @@ -288,6 +288,10 @@ sample_t level=a52_level, bias=384; int flags=a52_flags|A52_ADJUST_LEVEL; int i,len=-1; + if (maxlen / sh_audio->samplesize / 256 / sh_audio->channels < 6) { + mp_msg(MSGT_DECAUDIO, MSGL_V, "maxlen too small in decode_audio\n"); + return len; + } if (sh_audio->sample_format == AF_FORMAT_FLOAT_NE) bias = 0; if(!sh_audio->a_in_buffer_len)