Browse Source

4xm: fix invalid array indexing

Indexing outside arrays is invalid and breaks with gcc 4.8.

Signed-off-by: Mans Rullgard <mans@mansr.com>
tags/n0.11
Mans Rullgard 13 years ago
parent
commit
acb2c79c21
1 changed files with 12 additions and 9 deletions
  1. +12
    -9
      libavcodec/4xm.c

+ 12
- 9
libavcodec/4xm.c View File

@@ -240,15 +240,18 @@ static void idct(DCTELEM block[64])

static av_cold void init_vlcs(FourXContext *f)
{
static VLC_TYPE table[8][32][2];
int i;

for (i = 0; i < 8; i++) {
block_type_vlc[0][i].table = table[i];
block_type_vlc[0][i].table_allocated = 32;
init_vlc(&block_type_vlc[0][i], BLOCK_TYPE_VLC_BITS, 7,
&block_type_tab[0][i][0][1], 2, 1,
&block_type_tab[0][i][0][0], 2, 1, INIT_VLC_USE_NEW_STATIC);
static VLC_TYPE table[2][4][32][2];
int i, j;

for (i = 0; i < 2; i++) {
for (j = 0; j < 4; j++) {
block_type_vlc[i][j].table = table[i][j];
block_type_vlc[i][j].table_allocated = 32;
init_vlc(&block_type_vlc[i][j], BLOCK_TYPE_VLC_BITS, 7,
&block_type_tab[i][j][0][1], 2, 1,
&block_type_tab[i][j][0][0], 2, 1,
INIT_VLC_USE_NEW_STATIC);
}
}
}



Loading…
Cancel
Save