BogaudioModules

BogaudioModules for VCV Rack
Log | Files | Refs | README | LICENSE

commit e7e898c92b989c6174415c911ec066a2e5496218
parent b549c32508c961da09c5eb2b09d7fcf94e0af93f
Author: Matt Demanett <matt@demanett.net>
Date:   Fri, 22 Jan 2021 00:12:46 -0500

RANALYZER: fix crash on change sample rate from high to low. #166

Diffstat:
Msrc/Ranalyzer.cpp | 2++
Msrc/analyzer_base.cpp | 2++
2 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/src/Ranalyzer.cpp b/src/Ranalyzer.cpp @@ -27,6 +27,8 @@ void Ranalyzer::sampleRateChange() { _sampleTime = 1.0f / _sampleRate; _maxFrequency = roundf(maxFrequencyNyquistRatio * _sampleRate); _chirp.setSampleRate(_sampleRate); + _rangeMinHz = 0.0f; + _rangeMaxHz = 0.5f * _sampleRate; if (_sampleRate >= 96000.0f) { _core.setParams(1, AnalyzerCore::QUALITY_FIXED_32K, AnalyzerCore::WINDOW_NONE); } diff --git a/src/analyzer_base.cpp b/src/analyzer_base.cpp @@ -459,6 +459,8 @@ void AnalyzerDisplay::draw(const DrawArgs& args) { amplitudePlot = _module->_amplitudePlot; rangeMinHz = _module->_rangeMinHz; rangeMaxHz = _module->_rangeMaxHz; + assert(rangeMaxHz <= 0.5f * APP->engine->getSampleRate()); + assert(rangeMinHz < rangeMaxHz); } else { rangeMaxHz = 0.5f * APP->engine->getSampleRate();