Commit 2a3af772 authored by Michael Niedermayer's avatar Michael Niedermayer

avcodec/svq1enc: Check memory allocations

Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent 65b83ce0
...@@ -301,6 +301,8 @@ static int svq1_encode_plane(SVQ1EncContext *s, int plane, ...@@ -301,6 +301,8 @@ static int svq1_encode_plane(SVQ1EncContext *s, int plane,
s->motion_val16[plane] = av_mallocz((s->m.mb_stride * s->motion_val16[plane] = av_mallocz((s->m.mb_stride *
(block_height + 2) + 1) * (block_height + 2) + 1) *
2 * sizeof(int16_t)); 2 * sizeof(int16_t));
if (!s->motion_val8[plane] || !s->motion_val16[plane])
return AVERROR(ENOMEM);
} }
s->m.mb_type = s->mb_type; s->m.mb_type = s->mb_type;
...@@ -555,6 +557,12 @@ static av_cold int svq1_encode_init(AVCodecContext *avctx) ...@@ -555,6 +557,12 @@ static av_cold int svq1_encode_init(AVCodecContext *avctx)
s->y_block_height * sizeof(int32_t)); s->y_block_height * sizeof(int32_t));
s->ssd_int8_vs_int16 = ssd_int8_vs_int16_c; s->ssd_int8_vs_int16 = ssd_int8_vs_int16_c;
if (!s->m.me.scratchpad || !s->m.me.map || !s->m.me.score_map ||
!s->mb_type || !s->dummy) {
svq1_encode_end(avctx);
return AVERROR(ENOMEM);
}
if (ARCH_PPC) if (ARCH_PPC)
ff_svq1enc_init_ppc(s); ff_svq1enc_init_ppc(s);
if (ARCH_X86) if (ARCH_X86)
...@@ -588,6 +596,8 @@ static int svq1_encode_frame(AVCodecContext *avctx, AVPacket *pkt, ...@@ -588,6 +596,8 @@ static int svq1_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
} }
s->scratchbuf = av_malloc(s->current_picture->linesize[0] * 16 * 3); s->scratchbuf = av_malloc(s->current_picture->linesize[0] * 16 * 3);
} }
if (!s->scratchbuf)
return AVERROR(ENOMEM);
FFSWAP(AVFrame*, s->current_picture, s->last_picture); FFSWAP(AVFrame*, s->current_picture, s->last_picture);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment