diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index 95ec67c1e5..2645797824 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -2507,6 +2507,8 @@ static int matroska_parse_webvtt(MatroskaDemuxContext *matroska, return AVERROR_INVALIDDATA; pkt = av_mallocz(sizeof(*pkt)); + if (!pkt) + return AVERROR(ENOMEM); err = av_new_packet(pkt, text_len); if (err < 0) { av_free(pkt); @@ -2592,6 +2594,8 @@ static int matroska_parse_frame(MatroskaDemuxContext *matroska, offset = 8; pkt = av_mallocz(sizeof(AVPacket)); + if (!pkt) + return AVERROR(ENOMEM); /* XXX: prevent data copy... */ if (av_new_packet(pkt, pkt_size + offset) < 0) { av_free(pkt);