summaryrefslogtreecommitdiff
path: root/libavcodec/rv40.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2011-09-17 21:53:21 +0200
committerMichael Niedermayer <michaelni@gmx.at>2011-09-17 21:55:11 +0200
commit979bea13003ef489d95d2538ac2fb1c26c6f103b (patch)
treea875c4d0413def1b1ca50d46c4a6c8bdf6dc4e14 /libavcodec/rv40.c
parenta64b028aeb6579636e578ceb73f69b468bddb2f0 (diff)
check all svq3_get_ue_golomb() returns.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/rv40.c')
-rw-r--r--libavcodec/rv40.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libavcodec/rv40.c b/libavcodec/rv40.c
index 8c157fe18d..0222983087 100644
--- a/libavcodec/rv40.c
+++ b/libavcodec/rv40.c
@@ -231,8 +231,11 @@ static int rv40_decode_mb_info(RV34DecContext *r)
int blocks[RV34_MB_TYPES] = {0};
int count = 0;
- if(!r->s.mb_skip_run)
+ if(!r->s.mb_skip_run) {
r->s.mb_skip_run = svq3_get_ue_golomb(gb) + 1;
+ if(r->s.mb_skip_run > (unsigned)s->mb_num)
+ return -1;
+ }
if(--r->s.mb_skip_run)
return RV34_MB_SKIP;