diff -r 567bb019e3e3 -r 7e817e7e631c gst_plugins_base/gst-libs/gst/fft/kiss_fftr_s16.c --- a/gst_plugins_base/gst-libs/gst/fft/kiss_fftr_s16.c Tue Aug 31 15:30:33 2010 +0300 +++ b/gst_plugins_base/gst-libs/gst/fft/kiss_fftr_s16.c Wed Sep 01 12:16:41 2010 +0100 @@ -43,9 +43,9 @@ nfft >>= 1; kiss_fft_s16_alloc (nfft, inverse_fft, NULL, &subsize); - memneeded = ALIGN_STRUCT (sizeof (struct kiss_fftr_s16_state)) - + ALIGN_STRUCT (subsize) - + sizeof (kiss_fft_s16_cpx) * (nfft * 2); + memneeded = + sizeof (struct kiss_fftr_s16_state) + subsize + + sizeof (kiss_fft_s16_cpx) * (nfft * 2); if (lenmem == NULL) { st = (kiss_fftr_s16_cfg) KISS_FFT_S16_MALLOC (memneeded); @@ -57,9 +57,8 @@ if (!st) return NULL; - st->substate = (kiss_fft_s16_cfg) (((char *) st) + ALIGN_STRUCT (sizeof (struct kiss_fftr_s16_state))); /*just beyond kiss_fftr_s16_state struct */ - st->tmpbuf = - (kiss_fft_s16_cpx *) (((char *) st->substate) + ALIGN_STRUCT (subsize)); + st->substate = (kiss_fft_s16_cfg) (st + 1); /*just beyond kiss_fftr_s16_state struct */ + st->tmpbuf = (kiss_fft_s16_cpx *) (((char *) st->substate) + subsize); st->super_twiddles = st->tmpbuf + nfft; kiss_fft_s16_alloc (nfft, inverse_fft, st->substate, &subsize);