shithub: libvpx

Download patch

ref: 90de3b01241c084d1eed58e0e4d9184470c5abf7
parent: 7c6337ba9e486c8066db83ea2d845c3e8b7697f8
author: James Zern <jzern@google.com>
date: Fri Mar 14 14:37:20 EDT 2014

tokenize: quiet -Warray-bounds warnings

eob is limited by GetCoeffs

Change-Id: Ie5c0d024796fe6c9b2db0374892544e421bd5d09

--- a/vp8/encoder/tokenize.c
+++ b/vp8/encoder/tokenize.c
@@ -213,6 +213,7 @@
     /* Luma */
     for (block = 0; block < 16; block++, b++)
     {
+        const int eob = *b->eob;
         tmp1 = vp8_block2above[block];
         tmp2 = vp8_block2left[block];
         qcoeff_ptr = b->qcoeff;
@@ -223,7 +224,7 @@
 
         c = type ? 0 : 1;
 
-        if(c >= *b->eob)
+        if(c >= eob)
         {
             /* c = band for this case */
             t->Token = DCT_EOB_TOKEN;
@@ -250,7 +251,8 @@
         t++;
         c++;
 
-        for (; c < *b->eob; c++)
+        assert(eob <= 16);
+        for (; c < eob; c++)
         {
             rc = vp8_default_zig_zag1d[c];
             band = vp8_coef_bands[c];
@@ -286,6 +288,7 @@
     /* Chroma */
     for (block = 16; block < 24; block++, b++)
     {
+        const int eob = *b->eob;
         tmp1 = vp8_block2above[block];
         tmp2 = vp8_block2left[block];
         qcoeff_ptr = b->qcoeff;
@@ -294,7 +297,7 @@
 
         VP8_COMBINEENTROPYCONTEXTS(pt, *a, *l);
 
-        if(!(*b->eob))
+        if(!eob)
         {
             /* c = band for this case */
             t->Token = DCT_EOB_TOKEN;
@@ -321,7 +324,8 @@
         t++;
         c = 1;
 
-        for (; c < *b->eob; c++)
+        assert(eob <= 16);
+        for (; c < eob; c++)
         {
             rc = vp8_default_zig_zag1d[c];
             band = vp8_coef_bands[c];
--