Commit fb030bd0 authored by Kostya Shishkov's avatar Kostya Shishkov

Correct bundle lengths calculation for small Bink files.

This fixes issue 1764.

Originally committed as revision 21959 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent 9b3c455c
...@@ -698,8 +698,9 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size, AVPac ...@@ -698,8 +698,9 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size, AVPac
const int stride = c->pic.linesize[plane]; const int stride = c->pic.linesize[plane];
int bw = plane ? (avctx->width + 15) >> 4 : (avctx->width + 7) >> 3; int bw = plane ? (avctx->width + 15) >> 4 : (avctx->width + 7) >> 3;
int bh = plane ? (avctx->height + 15) >> 4 : (avctx->height + 7) >> 3; int bh = plane ? (avctx->height + 15) >> 4 : (avctx->height + 7) >> 3;
int width = avctx->width >> !!plane;
init_lengths(c, avctx->width >> !!plane, bw); init_lengths(c, FFMAX(width, 8), bw);
for (i = 0; i < BINK_NB_SRC; i++) for (i = 0; i < BINK_NB_SRC; i++)
read_bundle(&gb, c, i); read_bundle(&gb, c, 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