vp9: Use the correct upper bound for seg_id
authorLuca Barbato <lu_zero@gentoo.org>
Tue, 11 Nov 2014 12:27:01 +0000 (13:27 +0100)
committerVittorio Giovara <vittorio.giovara@gmail.com>
Fri, 21 Nov 2014 12:37:05 +0000 (12:37 +0000)
And use a macro to make apparent why the value.

Bug-Id: CID 1108595

libavcodec/vp9.h
libavcodec/vp9block.c

index 0a6c6ee..724288d 100644 (file)
@@ -313,6 +313,7 @@ typedef struct VP9Context {
         uint8_t temporal;
         uint8_t absolute_vals;
         uint8_t update_map;
+        #define MAX_SEGMENT 8
         struct {
             uint8_t q_enabled;
             uint8_t lf_enabled;
@@ -323,7 +324,7 @@ typedef struct VP9Context {
             int8_t lf_val;
             int16_t qmul[2][2];
             uint8_t lflvl[4][2];
-        } feat[8];
+        } feat[MAX_SEGMENT];
     } segmentation;
     struct {
         unsigned log2_tile_cols, log2_tile_rows;
index caf3bcc..a92c794 100644 (file)
@@ -71,7 +71,8 @@ static void decode_mode(VP9Context *s, VP9Block *const b)
                 vp56_rac_get_prob_branchy(&s->c,
                                           s->prob.segpred[s->above_segpred_ctx[col] +
                                                           s->left_segpred_ctx[row7]]))) {
-        int pred = 8, x;
+        int pred = MAX_SEGMENT - 1;
+        int x;
 
         for (y = 0; y < h4; y++)
             for (x = 0; x < w4; x++)