- // write the timestamp to address (write_loc - 1)
- uint8_t* write_loc = dst.reserve(ev_time, ev_size);
- if (write_loc == NULL) {
- if (stop_on_overflow_in_dst) {
- DEBUG_TRACE (DEBUG::MidiDiskstreamIO, string_compose ("MidiRingBuffer: overflow in destination MIDI buffer, stopped after %1 events\n", count));
- break;
- }
- cerr << "MRB: Unable to reserve space in buffer, event skipped";
- this->increment_read_ptr (prefix_size + ev_size); // Advance read pointer to next event
- continue;
- }
-
- /* we're good to go ahead and read the data now but since we
- * have the prefix data already, just skip over that
- */
-
- this->increment_read_ptr (prefix_size);
-
- // This event marks a loop end (i.e. the next event's timestamp will be non-monotonic)
+ // This event marks a loop end (i.e. the next event's timestamp
+ // will be non-monotonic). Don't write it into the buffer - the
+ // significance of this event ends here.
+