Skip to content

Commit 7f21281

Browse files
committed
Fix division by zero
1 parent 812e2cd commit 7f21281

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

src/Robocode/Vocoder.cpp

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,14 @@ Vocoder::Vocoder(const double samplerate, const std::vector<double>& frequencies
2020

2121
const double phase2freq = samplerate / (2 * std::numbers::pi);
2222

23-
for (size_t i = 0; i < dftsize; ++i)
24-
{
25-
slope[i] = phase2freq / frequencies[i];
26-
}
23+
std::transform(
24+
frequencies.begin(),
25+
frequencies.end(),
26+
slope.begin(),
27+
[&](const double freq)
28+
{
29+
return (freq > 0) ? phase2freq / freq : 0;
30+
});
2731
}
2832

2933
void Vocoder::analyze(const std::span<const std::complex<double>> dft,

0 commit comments

Comments
 (0)