Mercurial > hg > qm-dsp
comparison dsp/transforms/FFT.cpp @ 395:a0829908bb74
Fix overrun in reading inverse complex-to-real FFT input (contrary to docs)
author | Chris Cannam <c.cannam@qmul.ac.uk> |
---|---|
date | Fri, 09 May 2014 14:35:46 +0100 |
parents | 650bbacf8288 |
children | 7ab3539e92e3 |
comparison
equal
deleted
inserted
replaced
394:4744a44dcfb1 | 395:a0829908bb74 |
---|---|
145 delete[] io; | 145 delete[] io; |
146 } | 146 } |
147 | 147 |
148 void inverse(const double *ri, const double *ii, double *ro) { | 148 void inverse(const double *ri, const double *ii, double *ro) { |
149 | 149 |
150 for (int i = 0; i < m_n; ++i) { | 150 // kiss_fftr.h says |
151 // "input freqdata has nfft/2+1 complex points" | |
152 | |
153 for (int i = 0; i < m_n/2 + 1; ++i) { | |
151 m_c[i].r = ri[i]; | 154 m_c[i].r = ri[i]; |
152 m_c[i].i = ii[i]; | 155 m_c[i].i = ii[i]; |
153 } | 156 } |
154 | 157 |
155 kiss_fftri(m_plani, m_c, ro); | 158 kiss_fftri(m_plani, m_c, ro); |