Mercurial > libavcodec.hg
comparison cinepak.c @ 2963:c8fa6a50fca5 libavcodec
correctly handle very large Cinepak frames (courtesy of John Koleszar
<jkoleszar@on2.com>)
author | melanson |
---|---|
date | Wed, 14 Dec 2005 00:19:01 +0000 |
parents | 7bfea1374957 |
children | ef2149182f1c |
comparison
equal
deleted
inserted
replaced
2962:fde28cb7e3d5 | 2963:c8fa6a50fca5 |
---|---|
323 if (s->size < 10) | 323 if (s->size < 10) |
324 return -1; | 324 return -1; |
325 | 325 |
326 frame_flags = s->data[0]; | 326 frame_flags = s->data[0]; |
327 num_strips = BE_16 (&s->data[8]); | 327 num_strips = BE_16 (&s->data[8]); |
328 encoded_buf_size = BE_16 (&s->data[2]); | 328 encoded_buf_size = ((s->data[1] << 16) | BE_16 (&s->data[2])); |
329 if (encoded_buf_size != s->size) | 329 if (encoded_buf_size != s->size) |
330 sega_film_data = 1; | 330 sega_film_data = 1; |
331 if (sega_film_data) | 331 if (sega_film_data) |
332 s->data += 12; | 332 s->data += 12; |
333 else | 333 else |