[FFmpeg-cvslog] Fix av_open_input_stream with uninitialized context pointer.

Reimar Döffinger git at videolan.org
Wed Jul 6 20:20:06 CEST 2011


ffmpeg | branch: release/0.7 | Reimar Döffinger <Reimar.Doeffinger at gmx.de> | Tue Jul  5 23:10:44 2011 +0200| [0a48a67e57873b938c49ca57b0629e3e33fe37db] | committer: Reimar Döffinger

Fix av_open_input_stream with uninitialized context pointer.

Code would allocate a new context but forget to assign it
to the pointer actually passed to avformat_open_input,
potentially causing a crash.
Even if it was initialized it would cause a memleak.
This caused crashes with e.g. mpd, see also
http://bugs.gentoo.org/show_bug.cgi?id=373423

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger at gmx.de>
(cherry picked from commit 4e59c8ecf1433b85b539c5e89bb68cfe8b839866)

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

 libavformat/utils.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/libavformat/utils.c b/libavformat/utils.c
index b610276..b8a284a 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -524,7 +524,7 @@ int av_open_input_stream(AVFormatContext **ic_ptr,
     opts = convert_format_parameters(ap);
 
     if(!ap->prealloced_context)
-        ic = avformat_alloc_context();
+        *ic_ptr = ic = avformat_alloc_context();
     else
         ic = *ic_ptr;
     if (!ic) {



More information about the ffmpeg-cvslog mailing list