cinepak: Fix division by zero, ask for sample if encoded_buf_size is 0

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2011-11-16 15:10:26 +01:00
parent 12d9a36481
commit 4e7b3ef3b3

View File

@ -330,6 +330,10 @@ static int cinepak_decode (CinepakContext *s)
/* if this is the first frame, check for deviant Sega FILM data */
if (s->sega_film_skip_bytes == -1) {
if (!encoded_buf_size){
av_log_ask_for_sample(s->avctx, "encoded_buf_size is 0");
return -1;
}
if (encoded_buf_size != s->size && (s->size % encoded_buf_size) != 0) {
/* If the encoded frame size differs from the frame size as indicated
* by the container file, this data likely comes from a Sega FILM/CPK file.