From fb9dd1a411d518472521047b1f3451aabdc334a0 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Wed, 5 Jul 2017 15:07:37 -0400 Subject: DiskWriter needs to drop source refs in its destructor. SerializedRCUManager can't do this by itself --- libs/ardour/disk_writer.cc | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'libs/ardour/disk_writer.cc') diff --git a/libs/ardour/disk_writer.cc b/libs/ardour/disk_writer.cc index 1e248dcdc0..ac9bcade02 100644 --- a/libs/ardour/disk_writer.cc +++ b/libs/ardour/disk_writer.cc @@ -67,6 +67,12 @@ DiskWriter::DiskWriter (Session& s, string const & str, DiskIOProcessor::Flag f) DiskWriter::~DiskWriter () { DEBUG_TRACE (DEBUG::Destruction, string_compose ("DiskWriter %1 @ %2 deleted\n", _name, this)); + + boost::shared_ptr c = channels.reader(); + + for (ChannelList::iterator chan = c->begin(); chan != c->end(); ++chan) { + (*chan)->write_source.reset (); + } } framecnt_t -- cgit v1.2.3