diff --git a/libs/ardour/rt_midibuffer.cc b/libs/ardour/rt_midibuffer.cc index 0a5013ff6f..04a31e34e9 100644 --- a/libs/ardour/rt_midibuffer.cc +++ b/libs/ardour/rt_midibuffer.cc @@ -302,8 +302,16 @@ RTMidiBuffer::read (MidiBuffer& dst, samplepos_t start, samplepos_t end, MidiSta */ if (reverse) { + if (evtime > start) { + --item; + continue; + } evtime = start - evtime; } else { + if (evtime < start) { + ++item; + continue; + } evtime -= start; }