diff options
author | maksymsproductengine <maksymsproductengine@lindenlab.com> | 2014-12-19 23:20:47 +0200 |
---|---|---|
committer | maksymsproductengine <maksymsproductengine@lindenlab.com> | 2014-12-19 23:20:47 +0200 |
commit | 027899963cb8443e7880b4d4aa6c429d16db488b (patch) | |
tree | c57a93342fbe6f8e032198e85478705976f3f986 /indra/newview/llspeakers.cpp | |
parent | e21f8284fdd9cd86e2822b233775e9a3d77917d5 (diff) | |
parent | 4ec9bce3c2a715f53938e4568c95b7a2bdfc9e16 (diff) |
merge with 3.7.23-release
Diffstat (limited to 'indra/newview/llspeakers.cpp')
-rwxr-xr-x | indra/newview/llspeakers.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/indra/newview/llspeakers.cpp b/indra/newview/llspeakers.cpp index 89302c3c64..e80756e4de 100755 --- a/indra/newview/llspeakers.cpp +++ b/indra/newview/llspeakers.cpp @@ -544,10 +544,18 @@ void LLSpeakerMgr::updateSpeakerList() LLIMModel::LLIMSession* session = LLIMModel::getInstance()->findIMSession(session_id); if (session->isGroupSessionType() && (mSpeakers.size() <= 1)) { - const F32 load_group_timeout = gSavedSettings.getF32("ChatLoadGroupTimeout"); // For groups, we need to hit the group manager. // Note: The session uuid and the group uuid are actually one and the same. If that was to change, this will fail. LLGroupMgrGroupData* gdatap = LLGroupMgr::getInstance()->getGroupData(session_id); + F32 large_group_delay = 0.f; + if (gdatap) + { + //This is a viewer-side bandaid for maint-4414 it does not fix the core issue. + large_group_delay = (F32)(gdatap->mMemberCount / 5000); + } + + const F32 load_group_timeout = gSavedSettings.getF32("ChatLoadGroupTimeout") + large_group_delay; + if (!gdatap && (mGetListTime.getElapsedTimeF32() >= load_group_timeout)) { // Request the data the first time around |