diff --git a/src/demux.rs b/src/demux.rs index 595d349..2165045 100644 --- a/src/demux.rs +++ b/src/demux.rs @@ -253,6 +253,8 @@ impl Drop for Demuxer { if let DemuxerInput::Reader(_, _) = self.input { av_free((*(*self.ctx).pb).buffer as *mut _); drop(SlimBox::::from_raw((*(*self.ctx).pb).opaque)); + } + if !(*self.ctx).pb.is_null() { avio_context_free(&mut (*self.ctx).pb); } avformat_free_context(self.ctx);