mirror of
https://github.com/citra-emu/citra.git
synced 2024-12-18 13:20:04 +00:00
core: reset kernel after service manager in Shutdown
Services can hold kernel objects and do cleanup upon destruction, so we need to keep the kernel alive longer. The new order approximnately resembles the reverse construction order. I will revisit the ordering issue and make it less error-prone after global state cleanup
This commit is contained in:
parent
acaca4188e
commit
54d2f16c22
@ -291,7 +291,6 @@ void System::Shutdown() {
|
|||||||
// Shutdown emulation session
|
// Shutdown emulation session
|
||||||
GDBStub::Shutdown();
|
GDBStub::Shutdown();
|
||||||
VideoCore::Shutdown();
|
VideoCore::Shutdown();
|
||||||
kernel.reset();
|
|
||||||
HW::Shutdown();
|
HW::Shutdown();
|
||||||
telemetry_session.reset();
|
telemetry_session.reset();
|
||||||
rpc_server.reset();
|
rpc_server.reset();
|
||||||
@ -299,6 +298,7 @@ void System::Shutdown() {
|
|||||||
service_manager.reset();
|
service_manager.reset();
|
||||||
dsp_core.reset();
|
dsp_core.reset();
|
||||||
cpu_core.reset();
|
cpu_core.reset();
|
||||||
|
kernel.reset();
|
||||||
timing.reset();
|
timing.reset();
|
||||||
app_loader.reset();
|
app_loader.reset();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user