Log the waits on exit

So a log from a process that never exits shows which step it hung in.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Henrik RydgårdandClaude Opus 5.5 committed 2026-10-17 13:51:56 +02:00
1 parent 2968debfe7
commit f959acd680
2 files changed
+7

No files matched your search

+5
View File
@@ -1862,11 +1862,15 @@ void NativeShutdown() {
g_i18nrepo.LogMissingKeys();
// Each of these waits for a thread. Log them, so a hang on exit shows which one it was.
INFO_LOG(Log::System, "Shutting down the web server");
ShutdownWebServer();
INFO_LOG(Log::System, "Shutting down UPnP");
__UPnPShutdown();
// A request finishing while globals are destroyed at exit touches g_OSD, which may be gone by then.
INFO_LOG(Log::System, "Cancelling downloads");
g_DownloadManager.CancelAll();
net::Shutdown();
@@ -1875,6 +1879,7 @@ void NativeShutdown() {
ShaderTranslationShutdown();
INFO_LOG(Log::System, "Stopping the thread pool");
// Avoid shutting this down when restarting core.
g_logManager.Shutdown();
g_threadManager.Teardown();