mirror of
https://github.com/moonlight-stream/moonlight-qt.git
synced 2026-06-18 14:40:56 +00:00
Fix 'invalid VADisplay' errors on renderer destruction
This commit is contained in:
@@ -100,10 +100,15 @@ void FFmpegVideoDecoder::reset()
|
|||||||
delete m_Pacer;
|
delete m_Pacer;
|
||||||
m_Pacer = nullptr;
|
m_Pacer = nullptr;
|
||||||
|
|
||||||
|
// This must be called after deleting Pacer because it
|
||||||
|
// may be holding AVFrames to free in its destructor.
|
||||||
|
// However, it must be called before deleting the IFFmpegRenderer
|
||||||
|
// since the codec context may be referencing objects that we
|
||||||
|
// need to delete in the renderer destructor.
|
||||||
|
avcodec_free_context(&m_VideoDecoderCtx);
|
||||||
|
|
||||||
delete m_Renderer;
|
delete m_Renderer;
|
||||||
m_Renderer = nullptr;
|
m_Renderer = nullptr;
|
||||||
|
|
||||||
avcodec_free_context(&m_VideoDecoderCtx);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool FFmpegVideoDecoder::completeInitialization(AVCodec* decoder, SDL_Window* window,
|
bool FFmpegVideoDecoder::completeInitialization(AVCodec* decoder, SDL_Window* window,
|
||||||
|
|||||||
Reference in New Issue
Block a user