Avoid a null pointer dereference in avcodec_decode_video2().
authorCarl Eugen Hoyos <cehoyos@ag.or.at>
Thu, 27 Jun 2013 12:03:16 +0000 (14:03 +0200)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Fri, 28 Jun 2013 07:04:43 +0000 (09:04 +0200)
This could happen if oom occured while probing a file.
Reported in ticket #1900.

libavcodec/utils.c

index 9fe3a16..e0819f4 100644 (file)
@@ -1920,6 +1920,8 @@ int attribute_align_arg avcodec_decode_video2(AVCodecContext *avctx, AVFrame *pi
     // copy to ensure we do not change avpkt
     AVPacket tmp = *avpkt;
 
+    if (!avctx->codec)
+        return AVERROR(EINVAL);
     if (avctx->codec->type != AVMEDIA_TYPE_VIDEO) {
         av_log(avctx, AV_LOG_ERROR, "Invalid media type for video\n");
         return AVERROR(EINVAL);