diff --git a/libavcodec/tmv.c b/libavcodec/tmv.c index d4e5aa1398c44944eea5441f3017b64a627d118e..29d8e15fd974fa47b2e4d6cf1ec0cf02ed780d7a 100644 --- a/libavcodec/tmv.c +++ b/libavcodec/tmv.c @@ -47,20 +47,21 @@ static int tmv_decode_frame(AVCodecContext *avctx, void *data, unsigned char_cols = avctx->width >> 3; unsigned char_rows = avctx->height >> 3; unsigned x, y, fg, bg, c; + int ret; if (tmv->pic.data[0]) avctx->release_buffer(avctx, &tmv->pic); - if (ff_get_buffer(avctx, &tmv->pic) < 0) { + if ((ret = ff_get_buffer(avctx, &tmv->pic)) < 0) { av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n"); - return -1; + return ret; } if (avpkt->size < 2*char_rows*char_cols) { av_log(avctx, AV_LOG_ERROR, "Input buffer too small, truncated sample?\n"); *got_frame = 0; - return -1; + return AVERROR_INVALIDDATA; } tmv->pic.pict_type = AV_PICTURE_TYPE_I;