1
mirror of https://git.videolan.org/git/ffmpeg.git synced 2024-09-07 08:30:10 +02:00

Fix reading past the end of frame buffer.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Boris Maksalov 2012-08-10 09:50:35 +01:00 committed by Michael Niedermayer
parent bd92205014
commit d70231f02d

View File

@ -254,24 +254,24 @@ static void get_slice_data(ProresContext *ctx, const uint16_t *src,
ctx->dsp.fdct(esrc, elinesize, blocks);
blocks += 64;
if (blocks_per_mb > 2) {
ctx->dsp.fdct(src + 8, linesize, blocks);
ctx->dsp.fdct(esrc + 8, elinesize, blocks);
blocks += 64;
}
ctx->dsp.fdct(src + linesize * 4, linesize, blocks);
ctx->dsp.fdct(esrc + elinesize * 4, elinesize, blocks);
blocks += 64;
if (blocks_per_mb > 2) {
ctx->dsp.fdct(src + linesize * 4 + 8, linesize, blocks);
ctx->dsp.fdct(esrc + elinesize * 4 + 8, elinesize, blocks);
blocks += 64;
}
} else {
ctx->dsp.fdct(esrc, elinesize, blocks);
blocks += 64;
ctx->dsp.fdct(src + linesize * 4, linesize, blocks);
ctx->dsp.fdct(esrc + elinesize * 4, elinesize, blocks);
blocks += 64;
if (blocks_per_mb > 2) {
ctx->dsp.fdct(src + 8, linesize, blocks);
ctx->dsp.fdct(esrc + 8, elinesize, blocks);
blocks += 64;
ctx->dsp.fdct(src + linesize * 4 + 8, linesize, blocks);
ctx->dsp.fdct(esrc + elinesize * 4 + 8, elinesize, blocks);
blocks += 64;
}
}