diff options
author | Luca Barbato <lu_zero@gentoo.org> | 2012-12-14 08:22:06 +0100 |
---|---|---|
committer | Luca Barbato <lu_zero@gentoo.org> | 2012-12-14 13:21:59 +0100 |
commit | bb675d3ac6d722d5e117ae9042a996b55ca05b1d (patch) | |
tree | d0b3297195aebe50bf9d192664969f5becb228bf /libavcodec/vp5.c | |
parent | deabb52ab4c1fdb3dd319f3980b1489a182011f1 (diff) | |
download | ffmpeg-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.c | 12 |
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) |