summaryrefslogtreecommitdiff
path: root/libs/ardour/srcfilesource.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2015-04-20 16:31:06 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2015-04-20 16:31:06 -0400
commitd5be54080fa25e45e8bf441e9c72e53ffa3daa72 (patch)
treeefec66f75e66c64b8e36a2625c04b8a0b798ddf9 /libs/ardour/srcfilesource.cc
parentd263cf7ded76d510addd90b036befd4bb7eea9d1 (diff)
add a pure virtual FileSource::close() method so that FileSource::set_path() can ensure we no longer have a handle open
Diffstat (limited to 'libs/ardour/srcfilesource.cc')
-rw-r--r--libs/ardour/srcfilesource.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/libs/ardour/srcfilesource.cc b/libs/ardour/srcfilesource.cc
index e54afbfaba..276a31e46b 100644
--- a/libs/ardour/srcfilesource.cc
+++ b/libs/ardour/srcfilesource.cc
@@ -84,6 +84,15 @@ SrcFileSource::~SrcFileSource ()
delete [] _src_buffer;
}
+void
+SrcFileSource::close ()
+{
+ boost::shared_ptr<FileSource> fs = boost::dynamic_pointer_cast<FileSource> (_source);
+ if (fs) {
+ fs->close ();
+ }
+}
+
framecnt_t
SrcFileSource::read_unlocked (Sample *dst, framepos_t start, framecnt_t cnt) const
{