Browse Source

avfilter/buffer: Check for qp_table allocation failure

Fixes CID1271048
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tags/n2.6
Michael Niedermayer 11 years ago
parent
commit
b7e7ee6231
1 changed files with 7 additions and 1 deletions
  1. +7
    -1
      libavfilter/buffer.c

+ 7
- 1
libavfilter/buffer.c View File

@@ -42,13 +42,19 @@ void ff_avfilter_default_free_buffer(AVFilterBuffer *ptr)
av_free(ptr);
}

static void copy_video_props(AVFilterBufferRefVideoProps *dst, AVFilterBufferRefVideoProps *src) {
static int copy_video_props(AVFilterBufferRefVideoProps *dst, AVFilterBufferRefVideoProps *src) {
*dst = *src;
if (src->qp_table) {
int qsize = src->qp_table_size;
dst->qp_table = av_malloc(qsize);
if (!dst->qp_table) {
av_log(NULL, AV_LOG_ERROR, "Failed to allocate qp_table\n");
dst->qp_table_size = 0;
return AVERROR(ENOMEM);
}
memcpy(dst->qp_table, src->qp_table, qsize);
}
return 0;
}

AVFilterBufferRef *avfilter_ref_buffer(AVFilterBufferRef *ref, int pmask)


Loading…
Cancel
Save