From 84f55691eb34f7f524b64cba951a591d8bc49582 Mon Sep 17 00:00:00 2001 From: Sergey Stepanov Date: Thu, 21 Mar 2024 23:02:02 +0300 Subject: [PATCH] Check if dup frame didn't exist FBNeo can return dup frame flag before its first frame. --- pkg/worker/caged/libretro/frontend.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkg/worker/caged/libretro/frontend.go b/pkg/worker/caged/libretro/frontend.go index 935a24f3..77be7be8 100644 --- a/pkg/worker/caged/libretro/frontend.go +++ b/pkg/worker/caged/libretro/frontend.go @@ -209,7 +209,9 @@ func (f *Frontend) handleVideo(data []byte, delta int32, fi nanoarch.FrameInfo) } func (f *Frontend) handleDup() { - f.onVideo(*lastFrame) + if lastFrame != nil { + f.onVideo(*lastFrame) + } } func (f *Frontend) Shutdown() { @@ -217,6 +219,7 @@ func (f *Frontend) Shutdown() { f.nano.Shutdown() f.SetAudioCb(noAudio) f.SetVideoCb(noVideo) + lastFrame = nil f.mu.Unlock() f.log.Debug().Msgf("frontend shutdown done") }