diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c index 57c6eb1ff9..d5c97c8edf 100644 --- a/libavcodec/vp3.c +++ b/libavcodec/vp3.c @@ -2683,8 +2683,13 @@ static int vp3_decode_frame(AVCodecContext *avctx, if ((ret = ff_thread_get_buffer(avctx, &s->current_frame, AV_GET_BUFFER_FLAG_REF)) < 0) goto error; - if (!s->edge_emu_buffer) + if (!s->edge_emu_buffer) { s->edge_emu_buffer = av_malloc(9 * FFABS(s->current_frame.f->linesize[0])); + if (!s->edge_emu_buffer) { + ret = AVERROR(ENOMEM); + goto error; + } + } if (s->keyframe) { if (!s->theora) {