fix transport loop sub-state events
authorRobin Gareus <robin@gareus.org>
Thu, 11 Jun 2015 13:05:46 +0000 (15:05 +0200)
committerRobin Gareus <robin@gareus.org>
Thu, 11 Jun 2015 13:08:22 +0000 (15:08 +0200)
commit97de6efe5d6705f5ca8fb7af0e595e0f9fa092c1
tree1ba2a83479f2922c9cbc3ae383dee406dbc93d90
parent753d1ac392d8d6e7f7a805c277649dafcbdaa1b7
fix transport loop sub-state events

Loading a session with a loop-range, or setting
a loop-range adds LoopDeclick events.
Normal play back (no loop) never processes/clears the events.
Ardour was constantly doing split cycles for nothing.

This lead to stuck midi-notes: Split cycle calls
increment_global_port_buffer_offset() but the midi_diskstream
itself was not aware of any loop positions or offsets.

Entering loop playback adds those events explicitly
in Session::set_play_loop(). auto_loop_changed() only
needs to add/replace session-events when actively looping.
libs/ardour/session.cc