OSDN Git Service

muxer opts: fix avdict use in case of early private context alloc
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 25 Jul 2011 20:25:24 +0000 (22:25 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 25 Jul 2011 20:38:13 +0000 (22:38 +0200)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/utils.c

index 44ecd0a..38407b9 100644 (file)
@@ -2929,6 +2929,9 @@ int avformat_write_header(AVFormatContext *s, AVDictionary **options)
         av_dict_copy(&tmp, *options, 0);
     if ((ret = av_opt_set_dict(s, &tmp)) < 0)
         goto fail;
+    if (s->priv_data && s->oformat->priv_class && *(const AVClass**)s->priv_data==s->oformat->priv_class &&
+        (ret = av_opt_set_dict(s->priv_data, &tmp)) < 0)
+        goto fail;
 
     // some sanity checks
     if (s->nb_streams == 0 && !(s->oformat->flags & AVFMT_NOSTREAMS)) {