diff --git a/gtk2_ardour/midi_region_view.cc b/gtk2_ardour/midi_region_view.cc index b9af0a81a2..d020a13d88 100644 --- a/gtk2_ardour/midi_region_view.cc +++ b/gtk2_ardour/midi_region_view.cc @@ -764,8 +764,8 @@ MidiRegionView::add_note(const boost::shared_ptr note) ev_rect->property_y2() = y1 + floor(midi_stream_view()->note_height()); if (note->duration() == 0) { - cerr << "MidiModel: WARNING: Discovered note with duration 0 and pitch" << note->note() - << " at time " << note->time() << endl; + cerr << "MidiModel: WARNING: Discovered note with duration 0 and pitch" + << (int)note->note() << " at time " << note->time() << endl; if (_active_notes) { assert(note->note() < 128); _active_notes[note->note()] = ev_rect; diff --git a/libs/ardour/midi_model.cc b/libs/ardour/midi_model.cc index b4e2c54d3c..8819423694 100644 --- a/libs/ardour/midi_model.cc +++ b/libs/ardour/midi_model.cc @@ -101,8 +101,12 @@ MidiModel::const_iterator::const_iterator(const MidiModel& model, double t) } assert(x >= 0); - assert(y >= i->first.min()); - assert(y <= i->first.max()); + + if (y >= i->first.min() || y <= i->first.max()) { + cerr << "ERROR: Event value '" << y << "' out of range [" + << i->first.min() << "," << i->first.max() << "], ignored" << endl; + continue; + } const MidiControlIterator new_iter(i->second->list(), x, y);