summaryrefslogtreecommitdiff
path: root/indra/newview/llappviewer.cpp
diff options
context:
space:
mode:
authorAndrey Kleshchev <117672381+akleshchev@users.noreply.github.com>2026-07-19 10:47:11 +0300
committerAndrey Kleshchev <117672381+akleshchev@users.noreply.github.com>2026-07-20 20:32:48 +0300
commitce21ab1950b685b84ba0651d51cc4c200763860c (patch)
tree86b4226dc4163ec01a55a00ca8d56be784a00cc6 /indra/newview/llappviewer.cpp
parent331c3c758a114d23950ab23bb94ee19e85e662dd (diff)
#6014 Reduce shutdown delays on thread cleanup
Diffstat (limited to 'indra/newview/llappviewer.cpp')
-rw-r--r--indra/newview/llappviewer.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index e2bd8798f4..553517472e 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -1750,6 +1750,14 @@ bool LLAppViewer::cleanup()
LLPluginProcessParent::shutdown();
disconnectViewer();
+
+ if (LLWatchdog::instanceExists())
+ {
+ // Signal a stop early, so that it will be out
+ // of sleep loop by the time we get to clean it.
+ LLWatchdog::getInstance()->shutdown();
+ }
+
LLViewerCamera::deleteSingleton();
LL_INFOS() << "Viewer disconnected" << LL_ENDL;
@@ -2079,7 +2087,7 @@ bool LLAppViewer::cleanup()
if (sTextureFetch)
{
sTextureFetch->shutdown();
- sTextureFetch->waitOnPending();
+ sTextureFetch->waitOnPending(10.f);
delete sTextureFetch;
sTextureFetch = NULL;
}
@@ -2124,7 +2132,10 @@ bool LLAppViewer::cleanup()
gSavedSettings.cleanup();
LLUIColorTable::instance().clear();
- LLWatchdog::getInstance()->cleanup();
+ if (LLWatchdog::instanceExists())
+ {
+ LLWatchdog::getInstance()->cleanup();
+ }
LLViewerAssetStatsFF::cleanup();