mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Check whether extra bits block has enough data.
Patch by Laurent Aimar "f\145nr\151r >at< vide\157lan <dot> o\162g" Originally committed as revision 18732 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
241f5eab32
commit
66311f86d4
@ -795,6 +795,14 @@ static int wavpack_decode_frame(AVCodecContext *avctx,
|
||||
av_log(avctx, AV_LOG_ERROR, "Packed samples not found\n");
|
||||
return -1;
|
||||
}
|
||||
if(s->got_extra_bits){
|
||||
const int size = s->gb_extra_bits.size_in_bits - get_bits_count(&s->gb_extra_bits);
|
||||
const int wanted = s->samples * s->extra_bits << s->stereo_in;
|
||||
if(size < wanted){
|
||||
av_log(avctx, AV_LOG_ERROR, "Too small EXTRABITS\n");
|
||||
s->got_extra_bits = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if(s->stereo_in){
|
||||
if(bpp == 2)
|
||||
|
Loading…
Reference in New Issue
Block a user