You've already forked libopenshot
mirror of
https://github.com/OpenShot/libopenshot.git
synced 2026-03-02 08:53:52 -08:00
Refactoring FFmpegReader::Close, trying to prevent a crash on Windows
This commit is contained in:
@@ -587,15 +587,7 @@ void FFmpegReader::Close() {
|
||||
// Mark as "closed"
|
||||
is_open = false;
|
||||
|
||||
ZmqLogger::Instance()->AppendDebugMethod("FFmpegReader::Close");
|
||||
|
||||
if (packet) {
|
||||
ZmqLogger::Instance()->AppendDebugMethod("FFmpegReader::Close (Remove Packet)");
|
||||
|
||||
// Remove previous packet before getting next one
|
||||
RemoveAVPacket(packet);
|
||||
packet = NULL;
|
||||
}
|
||||
ZmqLogger::Instance()->AppendDebugMethod("FFmpegReader::Close (Start)");
|
||||
|
||||
// Close the codec
|
||||
if (info.has_video) {
|
||||
@@ -622,6 +614,12 @@ void FFmpegReader::Close() {
|
||||
AV_FREE_CONTEXT(aCodecCtx);
|
||||
}
|
||||
|
||||
if (packet) {
|
||||
ZmqLogger::Instance()->AppendDebugMethod("FFmpegReader::Close (Remove packet)");
|
||||
RemoveAVPacket(packet);
|
||||
packet = NULL;
|
||||
}
|
||||
|
||||
// Clear final cache
|
||||
ZmqLogger::Instance()->AppendDebugMethod("FFmpegReader::Close (Clear cache)");
|
||||
final_cache.Clear();
|
||||
|
||||
Reference in New Issue
Block a user