diff options
| author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2025-08-21 21:55:25 +0300 |
|---|---|---|
| committer | Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com> | 2025-08-22 23:15:24 +0300 |
| commit | 1022be69862db187594f2971fa9602d46f13e372 (patch) | |
| tree | 1fe9dfeb688141f30dc39f7cf1ef5b095003ecde /indra/newview/llviewerthrottle.cpp | |
| parent | f5423d4517e2e5fb747b2141cb9b71780662c435 (diff) | |
#4570 Sanity check bandwidth input
Going above this will just make server throttle things and viewer's
own throttlig won't be effective when viewer can't keep up.
Diffstat (limited to 'indra/newview/llviewerthrottle.cpp')
| -rw-r--r-- | indra/newview/llviewerthrottle.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/indra/newview/llviewerthrottle.cpp b/indra/newview/llviewerthrottle.cpp index 8d935e4243..3ccfbea6e2 100644 --- a/indra/newview/llviewerthrottle.cpp +++ b/indra/newview/llviewerthrottle.cpp @@ -225,7 +225,7 @@ void LLViewerThrottle::setMaxBandwidth(F32 kbits_per_second, bool from_event) void LLViewerThrottle::load() { - mMaxBandwidth = gSavedSettings.getF32("ThrottleBandwidthKBPS")*1024; + mMaxBandwidth = getMaxBandwidthKbps() * 1024; resetDynamicThrottle(); mCurrent.dump(); } @@ -242,6 +242,15 @@ void LLViewerThrottle::sendToSim() const mCurrent.sendToSim(); } +F32 LLViewerThrottle::getMaxBandwidthKbps() +{ + constexpr F32 MIN_BANDWIDTH = 100.0f; // 100 Kbps + constexpr F32 MAX_BANDWIDTH = 10000.0f; // 10 Mbps + + static LLCachedControl<F32> bandwidth(gSavedSettings, "ThrottleBandwidthKBPS", 3000.0); + return llclamp(bandwidth(), MIN_BANDWIDTH, MAX_BANDWIDTH); +} + LLViewerThrottleGroup LLViewerThrottle::getThrottleGroup(const F32 bandwidth_kbps) { |
