diff --git a/libavcodec/tmv.c b/libavcodec/tmv.c index 0eedc258c3..6aa76fbcc3 100644 --- a/libavcodec/tmv.c +++ b/libavcodec/tmv.c @@ -47,9 +47,6 @@ static int tmv_decode_frame(AVCodecContext *avctx, AVFrame *frame, unsigned x, y, fg, bg, c; int ret; - if ((ret = ff_get_buffer(avctx, frame, 0)) < 0) - return ret; - if (avpkt->size < 2*char_rows*char_cols) { av_log(avctx, AV_LOG_ERROR, "Input buffer too small, truncated sample?\n"); @@ -57,6 +54,9 @@ static int tmv_decode_frame(AVCodecContext *avctx, AVFrame *frame, return AVERROR_INVALIDDATA; } + if ((ret = ff_get_buffer(avctx, frame, 0)) < 0) + return ret; + dst = frame->data[0]; memcpy(frame->data[1], ff_cga_palette, 16 * 4);