summaryrefslogtreecommitdiff
path: root/libavcodec/cyuv.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2012-11-20 12:10:13 +0100
committerAnton Khirnov <anton@khirnov.net>2013-01-26 12:54:23 +0100
commit0859eaa0122b63778a5bd9635a1e3ede07a0cd1c (patch)
tree72b2094691be8ceaeae74491647218f3e76c5c29 /libavcodec/cyuv.c
parent6837bd6e49d537f3e8975a3b596abc1909daa6b6 (diff)
cyuv: return meaningful error codes.
Diffstat (limited to 'libavcodec/cyuv.c')
-rw-r--r--libavcodec/cyuv.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/libavcodec/cyuv.c b/libavcodec/cyuv.c
index 49cf64c08d..9c34c7525a 100644
--- a/libavcodec/cyuv.c
+++ b/libavcodec/cyuv.c
@@ -52,7 +52,7 @@ static av_cold int cyuv_decode_init(AVCodecContext *avctx)
s->width = avctx->width;
/* width needs to be divisible by 4 for this codec to work */
if (s->width & 0x3)
- return -1;
+ return AVERROR_INVALIDDATA;
s->height = avctx->height;
avctx->pix_fmt = AV_PIX_FMT_YUV411P;
@@ -83,6 +83,7 @@ static int cyuv_decode_frame(AVCodecContext *avctx,
int stream_ptr;
unsigned char cur_byte;
int pixel_groups;
+ int ret;
if (avctx->codec_id == AV_CODEC_ID_AURA) {
y_table = u_table;
@@ -95,7 +96,7 @@ static int cyuv_decode_frame(AVCodecContext *avctx,
if (buf_size != 48 + s->height * (s->width * 3 / 4)) {
av_log(avctx, AV_LOG_ERROR, "got a buffer with %d bytes when %d were expected\n",
buf_size, 48 + s->height * (s->width * 3 / 4));
- return -1;
+ return AVERROR_INVALIDDATA;
}
/* pixel data starts 48 bytes in, after 3x16-byte tables */
@@ -106,9 +107,9 @@ static int cyuv_decode_frame(AVCodecContext *avctx,
s->frame.buffer_hints = FF_BUFFER_HINTS_VALID;
s->frame.reference = 0;
- if (ff_get_buffer(avctx, &s->frame) < 0) {
+ if ((ret = ff_get_buffer(avctx, &s->frame)) < 0) {
av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");
- return -1;
+ return ret;
}
y_plane = s->frame.data[0];