diff --git a/src/engine/playback.cpp b/src/engine/playback.cpp index 78bf01359..5eaff648e 100644 --- a/src/engine/playback.cpp +++ b/src/engine/playback.cpp @@ -1144,13 +1144,15 @@ void DivEngine::nextBuf(float** in, float** out, int inChans, int outChans, unsi // 2. check whether we gonna tick if (cycles<=0) { // we have to tick - unsigned int realPos=size-(runLeftG>>MASTER_CLOCK_PREC); - if (realPos>=size) realPos=size-1; - if (song.hilightA>0) { - if ((curRow%song.hilightA)==0 && ticks==1) metroTick[realPos]=1; - } - if (song.hilightB>0) { - if ((curRow%song.hilightB)==0 && ticks==1) metroTick[realPos]=2; + if (!freelance && stepPlay!=-1) { + unsigned int realPos=size-(runLeftG>>MASTER_CLOCK_PREC); + if (realPos>=size) realPos=size-1; + if (song.hilightA>0) { + if ((curRow%song.hilightA)==0 && ticks==1) metroTick[realPos]=1; + } + if (song.hilightB>0) { + if ((curRow%song.hilightB)==0 && ticks==1) metroTick[realPos]=2; + } } if (nextTick()) { if (remainingLoops>0) {