kmvc: return meaningful error codes.

This commit is contained in:
Anton Khirnov 2012-11-16 22:36:10 +01:00
parent f3fcb1a7b2
commit e1a7061d63

View File

@ -248,7 +248,7 @@ static int decode_frame(AVCodecContext * avctx, void *data, int *got_frame,
{
KmvcContext *const ctx = avctx->priv_data;
uint8_t *out, *src;
int i;
int i, ret;
int header;
int blocksize;
const uint8_t *pal = av_packet_get_side_data(avpkt, AV_PKT_DATA_PALETTE, NULL);
@ -259,9 +259,9 @@ static int decode_frame(AVCodecContext * avctx, void *data, int *got_frame,
ctx->pic.reference = 1;
ctx->pic.buffer_hints = FF_BUFFER_HINTS_VALID;
if (ff_get_buffer(avctx, &ctx->pic) < 0) {
if ((ret = ff_get_buffer(avctx, &ctx->pic)) < 0) {
av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");
return -1;
return ret;
}
header = bytestream2_get_byte(&ctx->g);
@ -309,7 +309,7 @@ static int decode_frame(AVCodecContext * avctx, void *data, int *got_frame,
if (blocksize != 8 && blocksize != 127) {
av_log(avctx, AV_LOG_ERROR, "Block size = %i\n", blocksize);
return -1;
return AVERROR_INVALIDDATA;
}
memset(ctx->cur, 0, 320 * 200);
switch (header & KMVC_METHOD) {
@ -325,7 +325,7 @@ static int decode_frame(AVCodecContext * avctx, void *data, int *got_frame,
break;
default:
av_log(avctx, AV_LOG_ERROR, "Unknown compression method %i\n", header & KMVC_METHOD);
return -1;
return AVERROR_INVALIDDATA;
}
out = ctx->pic.data[0];
@ -366,7 +366,7 @@ static av_cold int decode_init(AVCodecContext * avctx)
if (avctx->width > 320 || avctx->height > 200) {
av_log(avctx, AV_LOG_ERROR, "KMVC supports frames <= 320x200\n");
return -1;
return AVERROR(EINVAL);
}
c->frm0 = av_mallocz(320 * 200);