From 523b1733261be593c75e929e2aa1df0a068f907a Mon Sep 17 00:00:00 2001 From: Sour Date: Wed, 3 Jul 2024 20:09:33 +0900 Subject: [PATCH] UI: Fixed "pause when movie finishes" option not working --- Core/Shared/Movies/MesenMovie.cpp | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/Core/Shared/Movies/MesenMovie.cpp b/Core/Shared/Movies/MesenMovie.cpp index 7600589f1..8724d7091 100644 --- a/Core/Shared/Movies/MesenMovie.cpp +++ b/Core/Shared/Movies/MesenMovie.cpp @@ -38,18 +38,17 @@ void MesenMovie::Stop() MessageManager::DisplayMessage("Movies", isEndOfMovie ? "MovieEnded" : "MovieStopped"); } - if(!_emu->IsEmulationThread()) { - EmuSettings* settings = _emu->GetSettings(); - if(isEndOfMovie && settings->GetPreferences().PauseOnMovieEnd) { - _emu->Pause(); - } - _emu->GetCheatManager()->SetCheats(_originalCheats); - - Serializer backup(0, false); - backup.LoadFrom(_emuSettingsBackup); - backup.Stream(*settings, "", -1); + EmuSettings* settings = _emu->GetSettings(); + if(isEndOfMovie && settings->GetPreferences().PauseOnMovieEnd) { + _emu->PauseOnNextFrame(); } + _emu->GetCheatManager()->SetCheats(_originalCheats); + + Serializer backup(0, false); + backup.LoadFrom(_emuSettingsBackup); + backup.Stream(*settings, "", -1); + _playing = false; }