aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/vp5.c
diff options
context:
space:
mode:
authorLuca Barbato <lu_zero@gentoo.org>2012-12-14 08:22:06 +0100
committerLuca Barbato <lu_zero@gentoo.org>2012-12-14 13:21:59 +0100
commitbb675d3ac6d722d5e117ae9042a996b55ca05b1d (patch)
treed0b3297195aebe50bf9d192664969f5becb228bf /libavcodec/vp5.c
parentdeabb52ab4c1fdb3dd319f3980b1489a182011f1 (diff)
downloadffmpeg-bb675d3ac6d722d5e117ae9042a996b55ca05b1d.tar.gz
vp56: make parse_header return standard error codes
Returning 0 for failure is misleading. CC: libav-stable@libav.org
Diffstat (limited to 'libavcodec/vp5.c')
-rw-r--r--libavcodec/vp5.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/libavcodec/vp5.c b/libavcodec/vp5.c
index a94fdc87af..36716237cc 100644
--- a/libavcodec/vp5.c
+++ b/libavcodec/vp5.c
@@ -49,18 +49,18 @@ static int vp5_parse_header(VP56Context *s, const uint8_t *buf, int buf_size,
{
vp56_rac_gets(c, 8);
if(vp56_rac_gets(c, 5) > 5)
- return 0;
+ return AVERROR_INVALIDDATA;
vp56_rac_gets(c, 2);
if (vp56_rac_get(c)) {
av_log(s->avctx, AV_LOG_ERROR, "interlacing not supported\n");
- return 0;
+ return AVERROR_PATCHWELCOME;
}
rows = vp56_rac_gets(c, 8); /* number of stored macroblock rows */
cols = vp56_rac_gets(c, 8); /* number of stored macroblock cols */
if (!rows || !cols) {
av_log(s->avctx, AV_LOG_ERROR, "Invalid size %dx%d\n",
cols << 4, rows << 4);
- return 0;
+ return AVERROR_INVALIDDATA;
}
vp56_rac_gets(c, 8); /* number of displayed macroblock rows */
vp56_rac_gets(c, 8); /* number of displayed macroblock cols */
@@ -69,11 +69,11 @@ static int vp5_parse_header(VP56Context *s, const uint8_t *buf, int buf_size,
16*cols != s->avctx->coded_width ||
16*rows != s->avctx->coded_height) {
avcodec_set_dimensions(s->avctx, 16*cols, 16*rows);
- return 2;
+ return VP56_SIZE_CHANGE;
}
} else if (!s->macroblocks)
- return 0;
- return 1;
+ return AVERROR_INVALIDDATA;
+ return 0;
}
static void vp5_parse_vector_adjustment(VP56Context *s, VP56mv *vect)