diff options
author | Erik Kundiman <erik@megapahit.org> | 2025-03-21 16:04:33 +0800 |
---|---|---|
committer | Erik Kundiman <erik@megapahit.org> | 2025-03-21 19:36:44 +0800 |
commit | 2fb48eb9be6df00c3baed955fd84f4d8a1ea1d9a (patch) | |
tree | b6ba5ff2c3ebc24477e3c6d701f91672c7499132 /indra/newview/llstartup.cpp | |
parent | 0cdb7d97f67b3a67097e56e71021cb6120ec8a8b (diff) | |
parent | 895a6739d3d02e11750e9ada72b730d02998d4c0 (diff) |
Merge tag 'Second_Life_Release#895a6739-2025.03' into 2025.03
Diffstat (limited to 'indra/newview/llstartup.cpp')
-rw-r--r-- | indra/newview/llstartup.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp index de673b591f..9a26ebc5f9 100644 --- a/indra/newview/llstartup.cpp +++ b/indra/newview/llstartup.cpp @@ -1741,6 +1741,15 @@ bool idle_startup() gAssetStorage->setUpstream(regionp->getHost()); gCacheName->setUpstream(regionp->getHost()); } + + // It is entirely possible that we may get the friends list _before_ we have the callbacks registered to process that. + // This will lead to the friends list not being processed properly and online statuses not being updated appropriately at login. + // So, we need to make sure that we have the callbacks registered before we get the friends list. + // This appears to crop up on some systems somewhere between STATE_AGENT_SEND and STATE_INVENTORY_SEND. It's happened to me a few times now. + // -Geenz 2025-03-12 + LL_INFOS() << " AvatarTracker" << LL_ENDL; + LLAvatarTracker::instance().registerCallbacks(gMessageSystem); + do_startup_frame(); // Create login effect @@ -2040,8 +2049,6 @@ bool idle_startup() LLMessageSystem* msg = gMessageSystem; LL_INFOS() << " Inventory" << LL_ENDL; LLInventoryModel::registerCallbacks(msg); - LL_INFOS() << " AvatarTracker" << LL_ENDL; - LLAvatarTracker::instance().registerCallbacks(msg); LL_INFOS() << " Landmark" << LL_ENDL; LLLandmark::registerCallbacks(msg); do_startup_frame(); |