summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2020-04-14 16:32:12 +0200
committerRobin Gareus <robin@gareus.org>2020-04-14 16:39:30 +0200
commit26bb781ecd9a84965734275a6e3ccc987e2f6510 (patch)
tree8f3b8a9a26660466cc9c15776e31e4f3fd0a144b /libs
parentdaec036faa3ef636a13f04e371ba21712ae84aaf (diff)
Fix disk-reader alignment when creating tracks while playing
Diffstat (limited to 'libs')
-rw-r--r--libs/ardour/disk_reader.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/libs/ardour/disk_reader.cc b/libs/ardour/disk_reader.cc
index 4e687c7962..11872662c0 100644
--- a/libs/ardour/disk_reader.cc
+++ b/libs/ardour/disk_reader.cc
@@ -510,6 +510,14 @@ DiskReader::declick_in_progress () const
void
DiskReader::configuration_changed ()
{
+ boost::shared_ptr<ChannelList> c = channels.reader ();
+ if (!c->empty ()) {
+ ReaderChannelInfo* chaninfo = dynamic_cast<ReaderChannelInfo*> (c->front ());
+ if (!chaninfo->initialized) {
+ seek (_session.transport_sample(), true);
+ return;
+ }
+ }
_session.request_overwrite_buffer (_track, LoopDisabled);
}