| @@ -92,9 +92,11 @@ public: | |||||
| // render audio until first midi event, if needed | // render audio until first midi event, if needed | ||||
| if (const uint32_t firstEventFrame = midiEvents[0].frame) | if (const uint32_t firstEventFrame = midiEvents[0].frame) | ||||
| { | { | ||||
| frames = midiEvents[0].frame; | |||||
| remainingFrames -= frames; | |||||
| totalFramesUsed += frames; | |||||
| DISTRHO_SAFE_ASSERT_UINT2_RETURN(firstEventFrame < remainingFrames, | |||||
| firstEventFrame, remainingFrames, false); | |||||
| frames = firstEventFrame; | |||||
| remainingFrames -= firstEventFrame; | |||||
| totalFramesUsed += firstEventFrame; | |||||
| return true; | return true; | ||||
| } | } | ||||
| } | } | ||||
| @@ -120,7 +122,8 @@ public: | |||||
| midiEvents += midiEventCount; | midiEvents += midiEventCount; | ||||
| const uint32_t firstEventFrame = midiEvents[0].frame; | const uint32_t firstEventFrame = midiEvents[0].frame; | ||||
| DISTRHO_SAFE_ASSERT_RETURN((firstEventFrame - frames) < remainingFrames, false); | |||||
| DISTRHO_SAFE_ASSERT_UINT2_RETURN(firstEventFrame >= totalFramesUsed, | |||||
| firstEventFrame, totalFramesUsed, false); | |||||
| midiEventCount = 1; | midiEventCount = 1; | ||||
| while (midiEventCount < remainingMidiEventCount) | while (midiEventCount < remainingMidiEventCount) | ||||
| @@ -131,16 +134,7 @@ public: | |||||
| break; | break; | ||||
| } | } | ||||
| if (totalFramesUsed != 0) | |||||
| { | |||||
| for (uint32_t i=0; i < midiEventCount; ++i) | |||||
| { | |||||
| DISTRHO_SAFE_ASSERT_UINT2_BREAK(midiEvents[i].frame - totalFramesUsed == 0, | |||||
| midiEvents[i].frame, totalFramesUsed); | |||||
| } | |||||
| } | |||||
| frames = remainingFrames - firstEventFrame; | |||||
| frames = firstEventFrame - totalFramesUsed; | |||||
| remainingFrames -= frames; | remainingFrames -= frames; | ||||
| remainingMidiEventCount -= midiEventCount; | remainingMidiEventCount -= midiEventCount; | ||||
| totalFramesUsed += frames; | totalFramesUsed += frames; | ||||