summaryrefslogtreecommitdiff
path: root/libs/ardour/auditioner.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/auditioner.cc')
-rw-r--r--libs/ardour/auditioner.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/libs/ardour/auditioner.cc b/libs/ardour/auditioner.cc
index 71129ccd11..ba51922a8f 100644
--- a/libs/ardour/auditioner.cc
+++ b/libs/ardour/auditioner.cc
@@ -397,6 +397,18 @@ Auditioner::audition_region (boost::shared_ptr<Region> region)
}
_disk_reader->seek (offset, true);
+
+ if (_midi_audition) {
+ /* Fill MIDI buffers.
+ * This is safe to call from here. ::::audition_region()
+ * is called by the butler thread. Also the session is not
+ * yet auditioning. So Session::non_realtime_overwrite()
+ * does call the auditioner's DR.
+ */
+ set_pending_overwrite (PlaylistModified);
+ _disk_reader->overwrite_existing_buffers ();
+ }
+
current_sample = offset;
g_atomic_int_set (&_auditioning, 1);