diff --git a/panda/src/movies/flacAudioCursor.cxx b/panda/src/movies/flacAudioCursor.cxx index 19eb71cbc9..0e3bbb163a 100644 --- a/panda/src/movies/flacAudioCursor.cxx +++ b/panda/src/movies/flacAudioCursor.cxx @@ -59,7 +59,8 @@ FlacAudioCursor:: FlacAudioCursor(FlacAudio *src, std::istream *stream) : MovieAudioCursor(src), _is_valid(false), - _drflac(nullptr) + _drflac(nullptr), + _stream(stream) { nassertv(stream != nullptr); nassertv(stream->good()); @@ -91,6 +92,9 @@ FlacAudioCursor:: if (_drflac != nullptr) { drflac_close(_drflac); } + if (_stream != nullptr) { + VirtualFileSystem::close_read_file(_stream); + } } /** diff --git a/panda/src/movies/flacAudioCursor.h b/panda/src/movies/flacAudioCursor.h index 55d59d5488..1de46bad01 100644 --- a/panda/src/movies/flacAudioCursor.h +++ b/panda/src/movies/flacAudioCursor.h @@ -41,6 +41,7 @@ public: protected: drflac *_drflac; + std::istream *_stream; public: static TypeHandle get_class_type() {