aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-06-02 02:37:36 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-06-07 00:55:25 +0200
commitdc72a59fe53b0003c254b3f17bf0385eeca7e43d (patch)
treed5c1c0811e8f34e399f9c97d97500b5c3600e2fa
parent70af4f209f552263f8ec7b72d309588e81823ca3 (diff)
downloadffmpeg-dc72a59fe53b0003c254b3f17bf0385eeca7e43d.tar.gz
ffv1: fix integer overflow in quant table initialization
Fixes part of Ticket1372 Found-by: Piotr Bandurski <ami_stuff@o2.pl> Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit 9ebe6e391071690dbee79a645c51b14bd55c2ff4) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/ffv1.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/ffv1.c b/libavcodec/ffv1.c
index 79409e2a16..21f17611a1 100644
--- a/libavcodec/ffv1.c
+++ b/libavcodec/ffv1.c
@@ -1651,9 +1651,9 @@ static int read_quant_table(RangeCoder *c, int16_t *quant_table, int scale){
memset(state, 128, sizeof(state));
for(v=0; i<128 ; v++){
- int len= get_symbol(c, state, 0) + 1;
+ unsigned len= get_symbol(c, state, 0) + 1;
- if(len + i > 128) return -1;
+ if(len > 128 - i) return -1;
while(len--){
quant_table[i] = scale*v;