From 08e5cd3810a563ed2cfee4fd6384d9a516b63fa3 Mon Sep 17 00:00:00 2001 From: Justin Ruggles Date: Fri, 28 Oct 2011 18:36:28 -0400 Subject: imc: return meaningful error codes instead of -1 --- libavcodec/imc.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'libavcodec/imc.c') diff --git a/libavcodec/imc.c b/libavcodec/imc.c index b1fcf12948..daa28576b0 100644 --- a/libavcodec/imc.c +++ b/libavcodec/imc.c @@ -344,7 +344,7 @@ static int bit_allocation (IMCContext* q, int stream_format_code, int freebits, indx = 2; if (indx == -1) - return -1; + return AVERROR_INVALIDDATA; q->flcoeffs4[i] = q->flcoeffs4[i] + xTab[(indx*2 + (q->flcoeffs1[i] < highest)) * 2 + flag]; } @@ -603,7 +603,7 @@ static int inverse_quant_coeff (IMCContext* q, int stream_format_code) { middle_value = max_size >> 1; if (q->codewords[j] >= max_size || q->codewords[j] < 0) - return -1; + return AVERROR_INVALIDDATA; if (cw_len >= 4){ quantizer = imc_quantizer2[(stream_format_code & 2) >> 1]; @@ -636,7 +636,7 @@ static int imc_get_coeffs (IMCContext* q) { if (get_bits_count(&q->gb) + cw_len > 512){ //av_log(NULL,0,"Band %i coeff %i cw_len %i\n",i,j,cw_len); - return -1; + return AVERROR_INVALIDDATA; } if(cw_len && (!q->bandFlagsBuf[i] || !q->skipFlags[j])) @@ -659,7 +659,7 @@ static int imc_decode_frame(AVCodecContext * avctx, IMCContext *q = avctx->priv_data; int stream_format_code; - int imc_hdr, i, j, out_size; + int imc_hdr, i, j, out_size, ret; int flag; int bits, summer; int counter, bitscount; @@ -667,7 +667,7 @@ static int imc_decode_frame(AVCodecContext * avctx, if (buf_size < IMC_BLOCK_SIZE) { av_log(avctx, AV_LOG_ERROR, "imc frame too small!\n"); - return -1; + return AVERROR_INVALIDDATA; } out_size = COEFFS * av_get_bytes_per_sample(avctx->sample_fmt); @@ -686,13 +686,13 @@ static int imc_decode_frame(AVCodecContext * avctx, if (imc_hdr != IMC_FRAME_ID) { av_log(avctx, AV_LOG_ERROR, "imc frame header check failed!\n"); av_log(avctx, AV_LOG_ERROR, "got %x instead of 0x21.\n", imc_hdr); - return -1; + return AVERROR_INVALIDDATA; } stream_format_code = get_bits(&q->gb, 3); if(stream_format_code & 1){ av_log(avctx, AV_LOG_ERROR, "Stream code format %X is not supported\n", stream_format_code); - return -1; + return AVERROR_INVALIDDATA; } // av_log(avctx, AV_LOG_DEBUG, "stream_format_code = %d\n", stream_format_code); @@ -752,10 +752,11 @@ static int imc_decode_frame(AVCodecContext * avctx, } } - if(bit_allocation (q, stream_format_code, 512 - bitscount - get_bits_count(&q->gb), flag) < 0) { + if((ret = bit_allocation (q, stream_format_code, + 512 - bitscount - get_bits_count(&q->gb), flag)) < 0) { av_log(avctx, AV_LOG_ERROR, "Bit allocations failed\n"); q->decoder_reset = 1; - return -1; + return ret; } for(i = 0; i < BANDS; i++) { -- cgit v1.2.3