Browse Source

avcodec/s302menc: check if buf_size can actually be put into 16bit size

This disallows creating unplayable audio.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
tags/n3.0
Paul B Mahol 9 years ago
parent
commit
db6e337b41
1 changed files with 5 additions and 0 deletions
  1. +5
    -0
      libavcodec/s302menc.c

+ 5
- 0
libavcodec/s302menc.c View File

@@ -78,6 +78,11 @@ static int s302m_encode2_frame(AVCodecContext *avctx, AVPacket *avpkt,
uint8_t *o;
PutBitContext pb;

if (buf_size - AES3_HEADER_LEN > UINT16_MAX) {
av_log(avctx, AV_LOG_ERROR, "number of samples in frame too big\n");
return AVERROR(EINVAL);
}

if ((ret = ff_alloc_packet2(avctx, avpkt, buf_size, 0)) < 0)
return ret;



Loading…
Cancel
Save