From 6cf50f8f6c3f4d240d0487bb42dc564439daaaa2 Mon Sep 17 00:00:00 2001 From: Nekotekina Date: Sun, 22 Nov 2020 12:45:19 +0300 Subject: [PATCH] Second attempt to fix hanging RPCS3 process Now fix exit logic a bit. Remove Init() call from Stop(). Remove Stop() call from Quit(). --- rpcs3/Emu/System.cpp | 2 -- rpcs3/rpcs3qt/main_window.cpp | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/rpcs3/Emu/System.cpp b/rpcs3/Emu/System.cpp index 9566939b62..0c5c403f7c 100644 --- a/rpcs3/Emu/System.cpp +++ b/rpcs3/Emu/System.cpp @@ -1963,13 +1963,11 @@ void Emulator::Stop(bool restart) } m_force_boot = false; - Init(); } bool Emulator::Quit(bool force_quit) { m_force_boot = false; - Emu.Stop(); // Deinitialize object manager to prevent any hanging objects at program exit *g_fxo = {}; diff --git a/rpcs3/rpcs3qt/main_window.cpp b/rpcs3/rpcs3qt/main_window.cpp index f181d3912b..26f8a7a3f8 100644 --- a/rpcs3/rpcs3qt/main_window.cpp +++ b/rpcs3/rpcs3qt/main_window.cpp @@ -2227,6 +2227,7 @@ void main_window::closeEvent(QCloseEvent* closeEvent) } // Cleanly stop and quit the emulator. + Emu.Stop(); Emu.Quit(true); }