[FFmpeg-cvslog] ffmpeg_opt: free incorrect priv_data for feed stream

Lukasz Marek git at videolan.org
Sat Nov 8 03:05:05 CET 2014


ffmpeg | branch: master | Lukasz Marek <lukasz.m.luki2 at gmail.com> | Fri Nov  7 09:05:41 2014 +0100| [2b14593148e0aef6f3ca76dcc3f9f2133a066b3d] | committer: Michael Niedermayer

ffmpeg_opt: free incorrect priv_data for feed stream

new_output_stream creates a codec context with arbitraty picked codec.
Later data is updated, but priv_data are left alone.
There is a bit chance there is a mismatch between codecs.

Signed-off-by: Lukasz Marek <lukasz.m.luki2 at gmail.com>
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2b14593148e0aef6f3ca76dcc3f9f2133a066b3d
---

 ffmpeg_opt.c |    4 ++++
 1 file changed, 4 insertions(+)

diff --git a/ffmpeg_opt.c b/ffmpeg_opt.c
index 1757dcc..454da98 100644
--- a/ffmpeg_opt.c
+++ b/ffmpeg_opt.c
@@ -1649,6 +1649,10 @@ static int read_ffserver_streams(OptionsContext *o, AVFormatContext *s, const ch
         else if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO && !ost->stream_copy)
             choose_pixel_fmt(st, st->codec, codec, st->codec->pix_fmt);
         avcodec_copy_context(ost->enc_ctx, st->codec);
+        if (ost->enc_ctx->priv_data) {
+            av_opt_free(ost->enc_ctx->priv_data);
+            av_freep(&ost->enc_ctx->priv_data);
+        }
     }
 
     avformat_close_input(&ic);



More information about the ffmpeg-cvslog mailing list