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); }