Browse Source

iffdec: Fix integer overflow.

Found-by: durandal_1707
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tags/n1.0
Michael Niedermayer 13 years ago
parent
commit
0e1925ddc4
1 changed files with 5 additions and 0 deletions
  1. +5
    -0
      libavcodec/iff.c

+ 5
- 0
libavcodec/iff.c View File

@@ -238,6 +238,11 @@ static int extract_header(AVCodecContext *const avctx,
s->mask_buf = av_malloc((s->planesize * 32) + FF_INPUT_BUFFER_PADDING_SIZE);
if (!s->mask_buf)
return AVERROR(ENOMEM);
if (s->bpp > 16) {
av_log(avctx, AV_LOG_ERROR, "bpp %d too large for palette\n", s->bpp);
av_freep(&s->mask_buf);
return AVERROR(ENOMEM);
}
s->mask_palbuf = av_malloc((2 << s->bpp) * sizeof(uint32_t) + FF_INPUT_BUFFER_PADDING_SIZE);
if (!s->mask_palbuf) {
av_freep(&s->mask_buf);


Loading…
Cancel
Save