From 20a8c78ce0a5baf37f6a94e2d1e57e186b6f4b54 Mon Sep 17 00:00:00 2001 From: Vittorio Giovara Date: Fri, 3 Jun 2016 12:14:50 -0400 Subject: [PATCH] avconv: Do not copy extradata if source buffer is empty Fixes clang-usan runtime error "null pointer passed as argument 2, which is declared to never be null" while streamcopying. Signed-off-by: Vittorio Giovara --- avconv.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/avconv.c b/avconv.c index d8631036a1..2e3bde925e 100644 --- a/avconv.c +++ b/avconv.c @@ -1875,12 +1875,15 @@ static int transcode_init(void) par_dst->bit_rate = par_src->bit_rate; par_dst->field_order = par_src->field_order; par_dst->chroma_location = par_src->chroma_location; - par_dst->extradata = av_mallocz(extra_size); - if (!par_dst->extradata) { - return AVERROR(ENOMEM); + if (par_src->extradata != NULL) { + par_dst->extradata = av_mallocz(extra_size); + if (!par_dst->extradata) { + return AVERROR(ENOMEM); + } + memcpy(par_dst->extradata, par_src->extradata, + par_src->extradata_size); + par_dst->extradata_size = par_src->extradata_size; } - memcpy(par_dst->extradata, par_src->extradata, par_src->extradata_size); - par_dst->extradata_size = par_src->extradata_size; ost->st->time_base = ist->st->time_base;