From e8c672f91e3146da03eb9bda9c6ed4e36fcc6fe1 Mon Sep 17 00:00:00 2001 From: cam900 Date: Tue, 31 May 2022 14:20:15 +0900 Subject: [PATCH] Fix preview --- src/engine/playback.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/engine/playback.cpp b/src/engine/playback.cpp index 9555c550..ac1c555b 100644 --- a/src/engine/playback.cpp +++ b/src/engine/playback.cpp @@ -1173,8 +1173,8 @@ void DivEngine::nextBuf(float** in, float** out, int inChans, int outChans, unsi if (sPreview.sample>=0 && sPreview.sample<(int)song.sample.size()) { DivSample* s=song.sample[sPreview.sample]; - const bool pBeginVaild=sPreview.pBegin>=0 && sPreview.pBeginsamples; - const bool pEndVaild=sPreview.pEnd>=0 && sPreview.pEndsamples; + const bool pBeginVaild=sPreview.pBegin>=0 && sPreview.pBegin<(int)s->samples; + const bool pEndVaild=sPreview.pEnd>=0 && sPreview.pEnd<(int)s->samples; const int loopStart=pBeginVaild?sPreview.pBegin:s->loopStart; const int loopEnd=pEndVaild?sPreview.pEnd:(int)s->loopEnd; for (size_t i=0; iisLoopable() && sPreview.posloopEnd) && ((int)sPreview.pos)isLoopable() && ((int)sPreview.pos)loopMode) { case DIV_SAMPLE_LOOPMODE_FORWARD: sPreview.dir=false; @@ -1212,7 +1212,7 @@ void DivEngine::nextBuf(float** in, float** out, int inChans, int outChans, unsi } } } else { - if ((s->isLoopable() && (int)sPreview.pos>=s->loopStart) && ((int)sPreview.pos)>=loopEnd) { + if (s->isLoopable() && ((int)sPreview.pos)>=loopEnd) { switch (s->loopMode) { case DIV_SAMPLE_LOOPMODE_FORWARD: sPreview.dir=false;