From 17ba6d319fd0935f5842a66f6ec8bbc1e05026d3 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 25 Oct 2019 21:14:43 -0600 Subject: [PATCH] use a different MidiBuffer API to move data from RT MidiBuffer into MidiBuffer during ::read() --- libs/ardour/rt_midibuffer.cc | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/libs/ardour/rt_midibuffer.cc b/libs/ardour/rt_midibuffer.cc index 6e381c48ed..933593e0a1 100644 --- a/libs/ardour/rt_midibuffer.cc +++ b/libs/ardour/rt_midibuffer.cc @@ -218,15 +218,11 @@ RTMidiBuffer::read (MidiBuffer& dst, samplepos_t start, samplepos_t end, MidiSta } - uint8_t* write_loc = dst.reserve (evtime, size); - - if (write_loc == 0) { + if (!dst.push_back (evtime, size, addr)) { DEBUG_TRACE (DEBUG::MidiRingBuffer, string_compose ("MidiRingBuffer: overflow in destination MIDI buffer, stopped after %1 events, dst size = %2\n", count, dst.size())); break; } - memcpy (write_loc, addr, size); - DEBUG_TRACE (DEBUG::MidiRingBuffer, string_compose ("read event sz %1 @ %2\n", size, unadjusted_time)); tracker.track (addr);