From 5ca31f0965e508ef2001e1cd2659ba326c0de429 Mon Sep 17 00:00:00 2001 From: Alibek Omarov Date: Mon, 2 Mar 2026 15:39:49 +0500 Subject: [PATCH] engine: client: s_mix: always mix when not in menu, as DSP effects might produce sound even if no channels are active --- engine/client/s_mix.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/engine/client/s_mix.c b/engine/client/s_mix.c index e93b3252..ceb21fe2 100644 --- a/engine/client/s_mix.c +++ b/engine/client/s_mix.c @@ -535,13 +535,11 @@ void S_PaintChannels( int endtime ) room_channels += S_MixRawChannels( end ); // now process DSP and mix result into paintbuffer - if( room_channels > 0 ) - { - if( cls.key_dest != key_menu ) - SX_RoomFX( roombuffer, num_samples ); + if( cls.key_dest != key_menu ) + SX_RoomFX( roombuffer, num_samples ); + if( room_channels > 0 || cls.key_dest != key_menu ) S_MixBufferWithGain( paintbuffer, roombuffer, num_samples, gain ); - } // transfer out according to DMA format S_TransferPaintBuffer( paintbuffer, end );