summaryrefslogtreecommitdiff
path: root/libs/ardour/midi_port.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/midi_port.cc')
-rw-r--r--libs/ardour/midi_port.cc11
1 files changed, 6 insertions, 5 deletions
diff --git a/libs/ardour/midi_port.cc b/libs/ardour/midi_port.cc
index a728ce2a44..4a6cc3a3af 100644
--- a/libs/ardour/midi_port.cc
+++ b/libs/ardour/midi_port.cc
@@ -272,12 +272,13 @@ MidiPort::flush_buffers (pframes_t nframes)
}
#endif
- assert (ev.time() < (nframes + _global_port_buffer_offset + _port_buffer_offset));
+ assert (ev.time() < (nframes + _global_port_buffer_offset));
- if (ev.time() >= _global_port_buffer_offset + _port_buffer_offset) {
- if (port_engine.midi_event_put (port_buffer, (pframes_t) ev.time(), ev.buffer(), ev.size()) != 0) {
- cerr << "write failed, drop flushed note off on the floor, time "
- << ev.time() << " > " << _global_port_buffer_offset + _port_buffer_offset << endl;
+ if (ev.time() >= _global_port_buffer_offset) {
+ if (port_engine.midi_event_put (port_buffer, (pframes_t) ev.time() + _port_buffer_offset, ev.buffer(), ev.size()) != 0) {
+ cerr << "write failed, dropped event, time "
+ << ev.time() << " + " << _port_buffer_offset
+ << " > " << _global_port_buffer_offset << endl;
}
} else {
cerr << "drop flushed event on the floor, time " << ev.time()