summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavcodec/rv40.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/libavcodec/rv40.c b/libavcodec/rv40.c
index b7e113c6ed..6553667efa 100644
--- a/libavcodec/rv40.c
+++ b/libavcodec/rv40.c
@@ -130,22 +130,23 @@ static int rv40_parse_slice_header(RV34DecContext *r, GetBitContext *gb, SliceIn
int mb_bits;
int w = r->s.width, h = r->s.height;
int mb_size;
+ int ret;
memset(si, 0, sizeof(SliceInfo));
if(get_bits1(gb))
- return -1;
+ return AVERROR_INVALIDDATA;
si->type = get_bits(gb, 2);
if(si->type == 1) si->type = 0;
si->quant = get_bits(gb, 5);
if(get_bits(gb, 2))
- return -1;
+ return AVERROR_INVALIDDATA;
si->vlc_set = get_bits(gb, 2);
skip_bits1(gb);
si->pts = get_bits(gb, 13);
if(!si->type || !get_bits1(gb))
rv40_parse_picture_size(gb, &w, &h);
- if(av_image_check_size(w, h, 0, r->s.avctx) < 0)
- return -1;
+ if ((ret = av_image_check_size(w, h, 0, r->s.avctx)) < 0)
+ return ret;
si->width = w;
si->height = h;
mb_size = ((w + 15) >> 4) * ((h + 15) >> 4);