vss: Avoid read-overflowing the header buffer for ogg streams.
[paraslash.git] / imdct.c
diff --git a/imdct.c b/imdct.c
index 5f48ba44c11b1186f6ebea4d5cec33b34e622bcc..aab498a390ba3ecdeded2452120d729540e84184 100644 (file)
--- a/imdct.c
+++ b/imdct.c
@@ -59,7 +59,7 @@ struct mdct_context {
 };
 
 /** cos(2 * pi * x / n) for 0 <= x <= n / 4, followed by its reverse */
-#define COSINE_TAB(n) fftsample_t cos_ ## n[n / 2] __a_aligned(16)
+#define COSINE_TAB(n) static fftsample_t cos_ ## n[n / 2] __a_aligned(16)
 
 COSINE_TAB(16);
 COSINE_TAB(32);
@@ -80,7 +80,7 @@ static fftsample_t *cos_tabs[] = {
        cos_4096, cos_8192, cos_16384, cos_32768, cos_65536,
 };
 
-static int split_radix_permutation(int i, int n)
+__a_const static int split_radix_permutation(int i, int n)
 {
        int m;
        if (n <= 2)
@@ -293,7 +293,6 @@ static void imdct_half(struct mdct_context *s, fftsample_t *output,
        fft(&s->fft, z);
 
        /* post rotation + reordering */
-       output += n4;
        for (k = 0; k < n8; k++) {
                fftsample_t r0, i0, r1, i1;
                CMUL(r0, i1, z[n8 - k - 1].im, z[n8 - k - 1].re,