Merge branch 'master' into saveas
[ardour.git] / libs / ardour / srcfilesource.cc
index 6af4aaa9d815fb1567f731402472810948229b1c..276a31e46b5343746844f7fa8cf60f0a8d55bbbb 100644 (file)
@@ -30,8 +30,7 @@
 using namespace ARDOUR;
 using namespace PBD;
 
-/* see disk_io_chunk_frames */
-const uint32_t SrcFileSource::blocksize = 65536U;
+const uint32_t SrcFileSource::blocksize = 65536U; /* somewhat arbitrary */
 
 SrcFileSource::SrcFileSource (Session& s, boost::shared_ptr<AudioFileSource> src, SrcQuality srcq)
        : Source(s, DataType::AUDIO, src->name(), Flag (src->flags() & ~(Writable|Removable|RemovableIfEmpty|RemoveAtDestroy)))
@@ -85,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
 {