summaryrefslogtreecommitdiff
path: root/libs/backends/dummy
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2015-03-08 02:01:48 +0100
committerRobin Gareus <robin@gareus.org>2015-03-08 02:01:48 +0100
commit50041cb4507e03af605286fc878cf92e953a3d86 (patch)
tree51ca3d8f5db8249229cf8efed7730a95e2a8dfd3 /libs/backends/dummy
parent95631cdc25b4643add09a45e55228375ef159e58 (diff)
avoid non-integer loop conditions.
Diffstat (limited to 'libs/backends/dummy')
-rw-r--r--libs/backends/dummy/dummy_audiobackend.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/libs/backends/dummy/dummy_audiobackend.cc b/libs/backends/dummy/dummy_audiobackend.cc
index 7b5f41bc89..462f1b9dc3 100644
--- a/libs/backends/dummy/dummy_audiobackend.cc
+++ b/libs/backends/dummy/dummy_audiobackend.cc
@@ -1600,8 +1600,9 @@ void DummyAudioPort::setup_generator (GeneratorType const g, float const sampler
const double b = log (f_max / f_min) / g_p2;
const double a = f_min / (b * samplerate);
#endif
+ const uint32_t g_p2i = rint(g_p2);
_wavetable = (Sample*) malloc (_gen_period * sizeof(Sample));
- for (uint32_t i = 0 ; i < g_p2; ++i) {
+ for (uint32_t i = 0 ; i < g_p2i; ++i) {
#ifdef LINEAR_SWEEP
const double phase = i * (a + b * i);
#else
@@ -1609,7 +1610,7 @@ void DummyAudioPort::setup_generator (GeneratorType const g, float const sampler
#endif
_wavetable[i] = (float)sin (2. * M_PI * (phase - floor (phase)));
}
- for (uint32_t i = g_p2; i < _gen_period; ++i) {
+ for (uint32_t i = g_p2i; i < _gen_period; ++i) {
const uint32_t j = _gen_period - i;
#ifdef LINEAR_SWEEP
const double phase = j * (a + b * j);