Fix offset events when consolidating MIDI range.
authorDavid Robillard <d@drobilla.net>
Fri, 9 Jan 2015 04:28:02 +0000 (23:28 -0500)
committerDavid Robillard <d@drobilla.net>
Fri, 9 Jan 2015 04:28:02 +0000 (23:28 -0500)
libs/ardour/session.cc

index 4b02d8ed7e6b127b319c0ae5e459369ff75f594e..4eb7ed288039fac45945ac99b898b732822d21ca 100644 (file)
@@ -4523,7 +4523,9 @@ Session::write_one_track (Track& track, framepos_t start, framepos_t end,
 
                                const MidiBuffer& buf = buffers.get_midi(0);
                                for (MidiBuffer::const_iterator i = buf.begin(); i != buf.end(); ++i) {
-                                       ms->append_event_frames(lock, *i, ms->timeline_position());
+                                       Evoral::Event<framepos_t> ev = *i;
+                                       ev.set_time(ev.time() - position);
+                                       ms->append_event_frames(lock, ev, ms->timeline_position());
                                }
                        }
                }