summaryrefslogtreecommitdiff
path: root/libs/ardour/midi_buffer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/midi_buffer.cc')
-rw-r--r--libs/ardour/midi_buffer.cc14
1 files changed, 8 insertions, 6 deletions
diff --git a/libs/ardour/midi_buffer.cc b/libs/ardour/midi_buffer.cc
index a629fe458f..1ca6a5db72 100644
--- a/libs/ardour/midi_buffer.cc
+++ b/libs/ardour/midi_buffer.cc
@@ -104,21 +104,23 @@ void
MidiBuffer::read_from(const Buffer& src, nframes_t nframes, nframes_t offset)
{
assert(src.type() == DataType::MIDI);
- const MidiBuffer& msrc = (MidiBuffer&)src;
+ assert(&src != this);
- assert(_capacity >= src.size());
+ const MidiBuffer& msrc = (MidiBuffer&)src;
+
+ assert(_capacity >= msrc.size());
clear();
assert(_size == 0);
-
+
// FIXME: slow
- for (size_t i=0; i < src.size(); ++i) {
+ for (size_t i=0; i < msrc.size(); ++i) {
const MidiEvent& ev = msrc[i];
if (ev.time() >= offset && ev.time() < offset+nframes) {
- //cerr << "MidiBuffer::read_from got event, " << ev.time() << endl;
+ //cout << "MidiBuffer::read_from got event, " << ev.time() << endl;
push_back(ev);
} else {
- //cerr << "MidiBuffer event out of range, " << ev.time() << endl;
+ cerr << "MidiBuffer event out of range, " << ev.time() << endl;
}
}