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 <vittorio.giovara@gmail.com>
This commit is contained in:
Vittorio Giovara 2016-06-03 12:14:50 -04:00
parent 38f99017e6
commit 20a8c78ce0

View File

@ -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;