summaryrefslogtreecommitdiff
path: root/libavcodec/4xm.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-04-29 21:45:41 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-04-29 21:45:54 +0200
commitdfa07e89289b25d44b6f2b959130077913921e0a (patch)
treeb83687405107f879c20b2ccc3dd66d6db35ae4fa /libavcodec/4xm.c
parent46eba43e0ef28d9d08ed41774e6bd1ce94388c35 (diff)
parentacb2c79c2102026747468dcafa6780ab1094b3c5 (diff)
Merge remote-tracking branch 'qatar/master'
* qatar/master: 4xm: fix invalid array indexing rv34dsp: factorize a multiplication in the noround inverse transform rv40: perform bitwise checks in loop filter rv34: remove inline keyword from rv34_decode_block(). rv40: change a logical test into a bitwise one. rv34: remove constant parameter rv40: don't always do the full prev_type search dsputil x86: revert a test back to its previous value rv34dsp x86: implement MMX2 inverse transform Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/4xm.c')
-rw-r--r--libavcodec/4xm.c21
1 files changed, 12 insertions, 9 deletions
diff --git a/libavcodec/4xm.c b/libavcodec/4xm.c
index 600cf81ccd..e186870590 100644
--- a/libavcodec/4xm.c
+++ b/libavcodec/4xm.c
@@ -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);
+ }
}
}