lavf: fix segfault in av_open_input_stream()
authorAnton Khirnov <anton@khirnov.net>
Tue, 12 Jul 2011 20:42:18 +0000 (22:42 +0200)
committerAnton Khirnov <anton@khirnov.net>
Wed, 13 Jul 2011 18:49:31 +0000 (20:49 +0200)
ic is NULL in case of error.

libavformat/utils.c

index e738dba..71fa955 100644 (file)
@@ -466,7 +466,8 @@ int av_open_input_stream(AVFormatContext **ic_ptr,
     else
         ic->pb = pb;
 
     else
         ic->pb = pb;
 
-    err = avformat_open_input(&ic, filename, fmt, &opts);
+    if ((err = avformat_open_input(&ic, filename, fmt, &opts)) < 0)
+        goto fail;
     ic->pb = ic->pb ? ic->pb : pb; // don't leak custom pb if it wasn't set above
 
     *ic_ptr = ic;
     ic->pb = ic->pb ? ic->pb : pb; // don't leak custom pb if it wasn't set above
 
     *ic_ptr = ic;