mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-09-08 05:33:28 +02:00
Misc shutdown fixes
* Destroy the ImGui debugger explicitly, not at static destruction time * Windows: destroy the debugger windows before NativeShutdown() * Clear the disassembly cache where it goes stale, not in view destructors (behind a no-op stub for libretro, which doesn't build DisassemblyManager.cpp) Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
050cacbbdf
commit
1c7f393e2b
+5
-3
@@ -1312,6 +1312,11 @@ int WINAPI WinMain(HINSTANCE _hInstance, HINSTANCE hPrevInstance, LPSTR szCmdLin
|
||||
_dbg_assert_(mainThread.joinable());
|
||||
mainThread.join();
|
||||
|
||||
// The debugger windows reach into core state as they go away (CtrlDisAsmView touches
|
||||
// g_disassemblyManager, for example), so tear them down while the core is still around.
|
||||
MainWindow::DestroyDebugWindows();
|
||||
DialogManager::DestroyAll();
|
||||
|
||||
// It's safe to call NativeShutdown, we've joined the main thread.
|
||||
NativeShutdown();
|
||||
|
||||
@@ -1319,9 +1324,6 @@ int WINAPI WinMain(HINSTANCE _hInstance, HINSTANCE hPrevInstance, LPSTR szCmdLin
|
||||
|
||||
// g_InputManager.StopPolling() is called in WM_DESTROY
|
||||
|
||||
MainWindow::DestroyDebugWindows();
|
||||
DialogManager::DestroyAll();
|
||||
|
||||
TimeShutdown();
|
||||
|
||||
UnRegisterCMPTMFApis();
|
||||
|
||||
Reference in New Issue
Block a user