diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 07807612f3..dc13a4be0e 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -3018,6 +3018,8 @@ static int mov_create_chapter_track(AVFormatContext *s, int tracknum) track->tag = MKTAG('t','e','x','t'); track->timescale = MOV_TIMESCALE; track->enc = avcodec_alloc_context3(NULL); + if (!track->enc) + return AVERROR(ENOMEM); track->enc->codec_type = AVMEDIA_TYPE_SUBTITLE; track->enc->extradata = av_malloc(sizeof(chapter_properties)); if (track->enc->extradata == NULL) @@ -3037,6 +3039,8 @@ static int mov_create_chapter_track(AVFormatContext *s, int tracknum) len = strlen(t->value); pkt.size = len + 2; pkt.data = av_malloc(pkt.size); + if (!pkt.data) + return AVERROR(ENOMEM); AV_WB16(pkt.data, len); memcpy(pkt.data + 2, t->value, len); ff_mov_write_packet(s, &pkt);