diff --git a/libavformat/utils.c b/libavformat/utils.c index a4c8b6f77fb3532414bba9a14828e37684bcaf15..ab64bfc22bbbff0d1c03c1b840d79ac83210c2a6 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -2184,12 +2184,11 @@ int av_write_header(AVFormatContext *s) } } - if (s->oformat->priv_data_size > 0) { + if (!s->priv_data && s->oformat->priv_data_size > 0) { s->priv_data = av_mallocz(s->oformat->priv_data_size); if (!s->priv_data) return AVERROR_NOMEM; - } else - s->priv_data = NULL; + } if(s->oformat->write_header){ ret = s->oformat->write_header(s);