Răsfoiți Sursa

amadeus: Fix possible underflow in delay time delay effect (#1739)

This fix an underflow in the setup of delay time in the delay effect.

THis fix a regression caused by Amadeus on Shovel Knight: Treasure
Trove.
Mary 5 ani în urmă
părinte
comite
92bcdcb369
1 a modificat fișierele cu 9 adăugiri și 1 ștergeri
  1. 9 1
      Ryujinx.Audio.Renderer/Dsp/Effect/DelayLine.cs

+ 9 - 1
Ryujinx.Audio.Renderer/Dsp/Effect/DelayLine.cs

@@ -42,7 +42,15 @@ namespace Ryujinx.Audio.Renderer.Dsp.Effect
         {
             CurrentSampleCount = Math.Min(SampleCountMax, targetSampleCount);
             _currentSampleIndex = 0;
-            _lastSampleIndex = CurrentSampleCount - 1;
+
+            if (CurrentSampleCount == 0)
+            {
+                _lastSampleIndex = 0;
+            }
+            else
+            {
+                _lastSampleIndex = CurrentSampleCount - 1;
+            }
         }
 
         public void SetDelay(float delayTime)