Browse Source

avcodec/extract_extradata: return an error when buffer allocation fails

ret is 0 by default.

Reviewed-by: Mark Thompson <sw@jkqxz.net>
Signed-off-by: James Almer <jamrial@gmail.com>
tags/n3.4
James Almer 7 years ago
parent
commit
7bae17e37a
1 changed files with 4 additions and 1 deletions
  1. +4
    -1
      libavcodec/extract_extradata_bsf.c

+ 4
- 1
libavcodec/extract_extradata_bsf.c View File

@@ -101,14 +101,17 @@ static int extract_extradata_h2645(AVBSFContext *ctx, AVPacket *pkt,


if (s->remove) { if (s->remove) {
filtered_buf = av_buffer_alloc(pkt->size + AV_INPUT_BUFFER_PADDING_SIZE); filtered_buf = av_buffer_alloc(pkt->size + AV_INPUT_BUFFER_PADDING_SIZE);
if (!filtered_buf)
if (!filtered_buf) {
ret = AVERROR(ENOMEM);
goto fail; goto fail;
}
filtered_data = filtered_buf->data; filtered_data = filtered_buf->data;
} }


extradata = av_malloc(extradata_size + AV_INPUT_BUFFER_PADDING_SIZE); extradata = av_malloc(extradata_size + AV_INPUT_BUFFER_PADDING_SIZE);
if (!extradata) { if (!extradata) {
av_buffer_unref(&filtered_buf); av_buffer_unref(&filtered_buf);
ret = AVERROR(ENOMEM);
goto fail; goto fail;
} }




Loading…
Cancel
Save