Avoid a null pointer dereference in avcodec_decode_audio4().
authorCarl Eugen Hoyos <cehoyos@ag.or.at>
Mon, 1 Jul 2013 01:07:44 +0000 (03:07 +0200)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Mon, 1 Jul 2013 01:07:44 +0000 (03:07 +0200)
This could happen if oom occured while probing a file.
Fixes ticket #2722.

libavcodec/utils.c

index e659cc5..f26e260 100644 (file)
@@ -2061,6 +2061,8 @@ int attribute_align_arg avcodec_decode_audio4(AVCodecContext *avctx,
         av_log(avctx, AV_LOG_ERROR, "invalid packet: NULL data, size != 0\n");
         return AVERROR(EINVAL);
     }
+    if (!avctx->codec)
+        return AVERROR(EINVAL);
     if (avctx->codec->type != AVMEDIA_TYPE_AUDIO) {
         av_log(avctx, AV_LOG_ERROR, "Invalid media type for audio\n");
         return AVERROR(EINVAL);