diff --git a/src/sfizz/Logger.cpp b/src/sfizz/Logger.cpp index 73b07e86..89e77767 100644 --- a/src/sfizz/Logger.cpp +++ b/src/sfizz/Logger.cpp @@ -102,7 +102,11 @@ void sfz::Logger::logCallbackTime(const CallbackBreakdown& breakdown, int numVoi if (!loggingEnabled) return; - callbackTimeQueue.try_push({ breakdown, numVoices, numSamples }); + CallbackTime callbackTime; + callbackTime.breakdown = breakdown; + callbackTime.numVoices = numVoices; + callbackTime.numSamples = numSamples; + callbackTimeQueue.try_push(callbackTime); } void sfz::Logger::logFileTime(std::chrono::duration waitDuration, std::chrono::duration loadDuration, uint32_t fileSize, absl::string_view filename) @@ -110,7 +114,12 @@ void sfz::Logger::logFileTime(std::chrono::duration waitDuration, std::c if (!loggingEnabled) return; - fileTimeQueue.try_push({ waitDuration, loadDuration, fileSize, filename }); + FileTime fileTime; + fileTime.waitDuration = waitDuration; + fileTime.loadDuration = loadDuration; + fileTime.fileSize = fileSize; + fileTime.filename = filename; + fileTimeQueue.try_push(fileTime); } void sfz::Logger::setPrefix(absl::string_view prefix) diff --git a/src/sfizz/Logger.h b/src/sfizz/Logger.h index 4e39471b..aa0d3953 100644 --- a/src/sfizz/Logger.h +++ b/src/sfizz/Logger.h @@ -52,6 +52,7 @@ struct FileTime Duration loadDuration { 0 }; uint32_t fileSize { 0 }; absl::string_view filename {}; + LEAK_DETECTOR(FileTime); }; struct CallbackBreakdown @@ -63,6 +64,7 @@ struct CallbackBreakdown Duration filters { 0 }; Duration panning { 0 }; Duration effects { 0 }; + LEAK_DETECTOR(CallbackBreakdown); }; struct CallbackTime @@ -70,6 +72,7 @@ struct CallbackTime CallbackBreakdown breakdown {}; int numVoices { 0 }; size_t numSamples { 0 }; + LEAK_DETECTOR(CallbackTime); }; class Logger diff --git a/tests/SynthT.cpp b/tests/SynthT.cpp index b9bf7ab8..2420df44 100644 --- a/tests/SynthT.cpp +++ b/tests/SynthT.cpp @@ -515,10 +515,10 @@ TEST_CASE("[Synth] veltrack") }; const VeltrackData veltrackdata[] = { - { 25, veldata25 }, - { 50, veldata50 }, - { 75, veldata75 }, - { 100, veldata100 }, + { 25, absl::MakeConstSpan(veldata25) }, + { 50, absl::MakeConstSpan(veldata50) }, + { 75, absl::MakeConstSpan(veldata75) }, + { 100, absl::MakeConstSpan(veldata100) }, }; for (const VeltrackData& vt : veltrackdata) {