diff options
| author | John Hurst <jhurst@cinecert.com> | 2021-08-26 20:50:19 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-08-26 20:50:19 -0700 |
| commit | 9b1a901aef79dfe022c54dfdb1e0c1c1b4a451a8 (patch) | |
| tree | 6485250809cc10407c03be5e742904edf0e7bc82 /src/AS_02_IAB.cpp | |
| parent | 3e71fd643d02342ffd7b5fd3b561233b3bb31acc (diff) | |
| parent | 6f35ffc75569b6a34ec46f4645ad1e601bdeaa80 (diff) | |
Merge pull request #16 from DolbyLaboratories/dolby/atmos_storage/asdcplib_integration/close_file_depends_on_pluggable_filereader
Close file if open when doing reset of the reader or destroying the reader
Diffstat (limited to 'src/AS_02_IAB.cpp')
| -rw-r--r-- | src/AS_02_IAB.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/AS_02_IAB.cpp b/src/AS_02_IAB.cpp index 55283ea..0d0ea64 100644 --- a/src/AS_02_IAB.cpp +++ b/src/AS_02_IAB.cpp @@ -356,7 +356,11 @@ AS_02::IAB::MXFWriter::Reset() { AS_02::IAB::MXFReader::MXFReader() : m_State(ST_READER_BEGIN) {} -AS_02::IAB::MXFReader::~MXFReader() {} +AS_02::IAB::MXFReader::~MXFReader() { + if ( m_Reader && m_Reader->m_File->IsOpen()) { + m_Reader->Close(); + } +} ASDCP::MXF::OP1aHeader& AS_02::IAB::MXFReader::OP1aHeader() const { @@ -649,6 +653,10 @@ AS_02::IAB::MXFReader::DumpIndex(FILE* stream) const { void AS_02::IAB::MXFReader::Reset() { + if ( m_Reader && m_Reader->m_File->IsOpen()) { + m_Reader->Close(); + } + this->m_Reader.set(NULL); this->m_State = ST_READER_BEGIN; } |
