Просмотр исходного кода

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 лет назад
Родитель
Сommit
92bcdcb369
1 измененных файлов с 9 добавлено и 1 удалено
  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)