From f2f53d25d325b54d6123f5fe9b47b4e45d6b48d5 Mon Sep 17 00:00:00 2001 From: Armin Date: Tue, 14 Jul 2026 13:55:56 +0200 Subject: [PATCH] fix: actually run the 250ms voice fade-out on preset change triggerQuickRelease only set the fade step, leaving quickFade at 1.0, so the decrement gate (quickFade < 1.0f) never triggered and only the amp envelope's long release played out. Gate on quickFadeStep > 0 instead so the 250ms ramp runs and the voice is freed at the end. --- Source/DSP/Voice.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/DSP/Voice.h b/Source/DSP/Voice.h index 3e921e8..65cfd3f 100644 --- a/Source/DSP/Voice.h +++ b/Source/DSP/Voice.h @@ -84,7 +84,7 @@ public: } // Per-voice quick fade (triggered on preset change) - if (quickFade < 1.0f) + if (quickFadeStep > 0.0f) quickFade = std::max(0.0f, quickFade - quickFadeStep); // LFO outputs