tiff: Return more meaningful error codes

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Himangi Saraogi 2015-03-30 22:24:06 +05:30 committed by Michael Niedermayer
parent ac9919b966
commit 0187c2ccda
1 changed files with 8 additions and 5 deletions

View File

@ -164,7 +164,8 @@ static int add_entry1(TiffEncoderContext *s,
* @param dst output buffer * @param dst output buffer
* @param n size of input buffer * @param n size of input buffer
* @param compr compression method * @param compr compression method
* @return number of output bytes. If an output error is encountered, -1 is returned * @return number of output bytes. If an output error is encountered, a negative
* value corresponding to an AVERROR error code is returned.
*/ */
static int encode_strip(TiffEncoderContext *s, const int8_t *src, static int encode_strip(TiffEncoderContext *s, const int8_t *src,
uint8_t *dst, int n, int compr) uint8_t *dst, int n, int compr)
@ -177,14 +178,14 @@ static int encode_strip(TiffEncoderContext *s, const int8_t *src,
unsigned long zlen = s->buf_size - (*s->buf - s->buf_start); unsigned long zlen = s->buf_size - (*s->buf - s->buf_start);
if (compress(dst, &zlen, src, n) != Z_OK) { if (compress(dst, &zlen, src, n) != Z_OK) {
av_log(s->avctx, AV_LOG_ERROR, "Compressing failed\n"); av_log(s->avctx, AV_LOG_ERROR, "Compressing failed\n");
return -1; return AVERROR_EXTERNAL;
} }
return zlen; return zlen;
} }
#endif #endif
case TIFF_RAW: case TIFF_RAW:
if (check_size(s, n)) if (check_size(s, n))
return -1; return AVERROR(EINVAL);
memcpy(dst, src, n); memcpy(dst, src, n);
return n; return n;
case TIFF_PACKBITS: case TIFF_PACKBITS:
@ -193,7 +194,9 @@ static int encode_strip(TiffEncoderContext *s, const int8_t *src,
case TIFF_LZW: case TIFF_LZW:
return ff_lzw_encode(s->lzws, src, n); return ff_lzw_encode(s->lzws, src, n);
default: default:
return -1; av_log(s->avctx, AV_LOG_ERROR, "Unsupported compression method: %d\n",
compr);
return AVERROR(EINVAL);
} }
} }
@ -304,7 +307,7 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt,
default: default:
av_log(s->avctx, AV_LOG_ERROR, av_log(s->avctx, AV_LOG_ERROR,
"This colors format is not supported\n"); "This colors format is not supported\n");
return -1; return AVERROR(EINVAL);
} }
for (i = 0; i < s->bpp_tab_size; i++) for (i = 0; i < s->bpp_tab_size; i++)