summaryrefslogtreecommitdiff
path: root/libs/ardour/disk_reader.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2019-11-06 22:12:40 -0700
committerPaul Davis <paul@linuxaudiosystems.com>2019-11-06 22:12:40 -0700
commit625b8297ea59232a1d91f9bf2efeb65ca70b9791 (patch)
tree1a7c06502d85374fa0aa578f857dea21d8a49d5b /libs/ardour/disk_reader.cc
parenteda27cc3de7dda78aaf24edf0ba7e75e7a9df8b9 (diff)
fix unconditional note resolution during DiskReader::realtime_locate()
When looping, we do not want to resolve notes at the end of the loop via ::realtime_locate() - ::get_midi_playback() has already taken care of this. But when not looping, we need this. So, add an argument to tell all interested parties whether the locate is for a loop end or not
Diffstat (limited to 'libs/ardour/disk_reader.cc')
-rw-r--r--libs/ardour/disk_reader.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/libs/ardour/disk_reader.cc b/libs/ardour/disk_reader.cc
index 919fdd8669..7c1f7231c1 100644
--- a/libs/ardour/disk_reader.cc
+++ b/libs/ardour/disk_reader.cc
@@ -169,8 +169,11 @@ void
DiskReader::realtime_locate (bool for_loop_end)
{
if (!for_loop_end) {
+ std::cerr << name() << "DO note resolve on locate for loop\n";
boost::shared_ptr<MidiTrack> mt = boost::dynamic_pointer_cast<MidiTrack>(_track);
_tracker.resolve_notes (mt->immediate_events(), 0);
+ } else {
+ std::cerr << name() << "skip note resolve on locate for loop\n";
}
}