From d98c2fb34e07465f854524adebf8a3345f11aecb Mon Sep 17 00:00:00 2001 From: Joel de Vahl Date: Mon, 23 Jul 2007 08:02:52 +0000 Subject: Zer sound is wööörking MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/engine/client/snd.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/engine/client/snd.cpp b/src/engine/client/snd.cpp index a4ed957c..ce854050 100644 --- a/src/engine/client/snd.cpp +++ b/src/engine/client/snd.cpp @@ -110,11 +110,12 @@ public: unsigned long filled = 0; while(channels[c].data && filled < frames) { - unsigned long to_fill = frames; + unsigned long frames_left = (channels[c].data->num_samples - channels[c].tick) >> (channels[c].data->channels-1); + unsigned long to_fill = frames>frames_left?frames_left:frames; float dv = 0.0f; if(channels[c].stop >= 0) - to_fill = (unsigned)channels[c].stop>frames?frames:channels[c].stop; + to_fill = (unsigned)channels[c].stop>frames_left?frames:channels[c].stop; if(channels[c].loop >= 0 && channels[c].data->sustain_start >= 0) { -- cgit 1.4.1