Fix a couple of reserve()s that should be resize() (#2285).
authorCarl Hetherington <cth@carlh.net>
Sun, 17 Jul 2022 18:01:58 +0000 (20:01 +0200)
committerCarl Hetherington <cth@carlh.net>
Sun, 17 Jul 2022 18:02:08 +0000 (20:02 +0200)
src/lib/audio_filter.cc
test/audio_filter_test.cc

index 2b4c440834738dc023a32c1513684a8a4e97731c..94994ba81036fd1fad2fa16785d37d76ec0d76bb 100644 (file)
@@ -35,7 +35,7 @@ std::vector<float>
 AudioFilter::sinc_blackman (float cutoff, bool invert) const
 {
        auto ir = std::vector<float>();
-       ir.reserve(_M + 1);
+       ir.resize(_M + 1);
 
        /* Impulse response */
 
@@ -142,7 +142,7 @@ BandPassAudioFilter::BandPassAudioFilter (float transition_bandwidth, float lowe
        auto lpf = sinc_blackman (lower, false);
        auto hpf = sinc_blackman (higher, true);
 
-       _ir.reserve (_M + 1);
+       _ir.resize(_M + 1);
        for (int i = 0; i <= _M; ++i) {
                _ir[i] = lpf[i] + hpf[i];
        }
index a258786374e0a22a1a3beea6b50f8017837da967..8f0b9e794a487eee2233c0b890566e2dbda89861 100644 (file)
@@ -64,7 +64,7 @@ BOOST_AUTO_TEST_CASE (audio_filter_impulse_kernel_test)
 {
        AudioFilter f (0.02);
 
-       f._ir.reserve(f._M + 1);
+       f._ir.resize(f._M + 1);
        f._ir[0] = 1;
        for (int i = 1; i <= f._M; ++i) {
                f._ir[i] = 0;