Commit 47b777ce authored by Michael Niedermayer's avatar Michael Niedermayer

sanity checks (should prevent hypothetical div by zero issue)

should fix sf bug #1547313

Originally committed as revision 9164 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent 61d49d12
...@@ -72,6 +72,11 @@ int ff_wma_init(AVCodecContext * avctx, int flags2) ...@@ -72,6 +72,11 @@ int ff_wma_init(AVCodecContext * avctx, int flags2)
int sample_rate1; int sample_rate1;
int coef_vlc_table; int coef_vlc_table;
if( avctx->sample_rate<=0 || avctx->sample_rate>50000
|| avctx->channels<=0 || avctx->channels>8
|| avctx->bit_rate<=0)
return -1;
s->sample_rate = avctx->sample_rate; s->sample_rate = avctx->sample_rate;
s->nb_channels = avctx->channels; s->nb_channels = avctx->channels;
s->bit_rate = avctx->bit_rate; s->bit_rate = avctx->bit_rate;
......
...@@ -106,7 +106,8 @@ static int wma_decode_init(AVCodecContext * avctx) ...@@ -106,7 +106,8 @@ static int wma_decode_init(AVCodecContext * avctx)
s->use_bit_reservoir = flags2 & 0x0002; s->use_bit_reservoir = flags2 & 0x0002;
s->use_variable_block_len = flags2 & 0x0004; s->use_variable_block_len = flags2 & 0x0004;
ff_wma_init(avctx, flags2); if(ff_wma_init(avctx, flags2)<0)
return -1;
/* init MDCT */ /* init MDCT */
for(i = 0; i < s->nb_block_sizes; i++) for(i = 0; i < s->nb_block_sizes; i++)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment