exr: fix decoding ZIP16 and height not multiple of 16

Signed-off-by: Paul B Mahol <onemda@gmail.com>
pull/28/head
Paul B Mahol 13 years ago
parent 2d5c80b2e8
commit e4fff08f5b
  1. 2
      libavcodec/exr.c

@ -543,6 +543,8 @@ static int decode_frame(AVCodecContext *avctx,
} else {
const uint8_t *red_channel_buffer, *green_channel_buffer, *blue_channel_buffer, *alpha_channel_buffer = 0;
if (scan_lines_per_block > 1)
uncompressed_size = scan_line_size * FFMIN(scan_lines_per_block, ymax - y + 1);
if ((s->compr == EXR_ZIP1 || s->compr == EXR_ZIP16) && data_size < uncompressed_size) {
unsigned long dest_len = uncompressed_size;

Loading…
Cancel
Save