summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authorErik Kundiman <erik@megapahit.org>2026-01-29 14:43:23 +0800
committerErik Kundiman <erik@megapahit.org>2026-01-29 14:43:23 +0800
commitdbe9c9c1929cfb345f9363e4ba1cb4128188d2f3 (patch)
treee97d3f034dc68c68af99034765683c58c771f6d3 /indra/newview
parent4644df66c9f210c8cda81ae63e4c6a6b7ebece9f (diff)
parente42ec63bfd7ada1087a00ca3ccc39c95679b7fab (diff)
Merge tag 'Second_Life_Release#e42ec63b-2026.01' into 2026.01
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/app_settings/settings.xml2
-rw-r--r--indra/newview/llaisapi.cpp7
-rw-r--r--indra/newview/llvoicewebrtc.cpp14
3 files changed, 15 insertions, 8 deletions
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index 5e4152e480..119a5e57ad 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -3509,7 +3509,7 @@
<key>Type</key>
<string>String</string>
<key>Value</key>
- <string>https://guidebooks.secondlife.io/welcome/index.html</string>
+ <string>http://guidebooks.secondlife.io/welcome/index.html</string>
</map>
<key>HighResSnapshot</key>
<map>
diff --git a/indra/newview/llaisapi.cpp b/indra/newview/llaisapi.cpp
index 1da1647fe8..9c76f56ef3 100644
--- a/indra/newview/llaisapi.cpp
+++ b/indra/newview/llaisapi.cpp
@@ -1060,7 +1060,12 @@ void AISUpdate::checkTimeout()
{
if (mTimer.hasExpired())
{
- llcoro::suspend();
+ // If we are taking too long, don't starve other tasks,
+ // yield to mainloop.
+ // If we use normal suspend(), there will be a chance of
+ // waking up from other suspends, before main coro had
+ // a chance, so wait for a frame tick instead.
+ llcoro::suspendUntilNextFrame();
LLCoros::checkStop();
mTimer.setTimerExpirySec(AIS_EXPIRY_SECONDS);
}
diff --git a/indra/newview/llvoicewebrtc.cpp b/indra/newview/llvoicewebrtc.cpp
index 298923f7fa..06ccd23670 100644
--- a/indra/newview/llvoicewebrtc.cpp
+++ b/indra/newview/llvoicewebrtc.cpp
@@ -2549,10 +2549,7 @@ void LLVoiceWebRTCConnection::OnRenegotiationNeeded()
LL::WorkQueue::postMaybe(mMainQueue,
[=, this] {
LL_DEBUGS("Voice") << "Voice channel requires renegotiation." << LL_ENDL;
- if (!mShutDown)
- {
- setVoiceConnectionState(VOICE_STATE_SESSION_RETRY);
- }
+ setVoiceConnectionState(VOICE_STATE_SESSION_RETRY);
mCurrentStatus = LLVoiceClientStatusObserver::ERROR_UNKNOWN;
});
}
@@ -2898,9 +2895,10 @@ bool LLVoiceWebRTCConnection::connectionStateMachine()
// this connection.
// For spatial this connection will come up as muted, but will be set to the appropriate
// value later on when we determine the regions we connect to.
- if (!isSpatial())
+ if (isSpatial())
{
- mWebRTCAudioInterface->setMute(mMuted);
+ // we'll determine primary state later and set mute accordinly
+ mPrimary = false;
}
mWebRTCAudioInterface->setReceiveVolume(mSpeakerVolume);
LLWebRTCVoiceClient::getInstance()->OnConnectionEstablished(mChannelID, mRegionID);
@@ -2924,6 +2922,10 @@ bool LLVoiceWebRTCConnection::connectionStateMachine()
LLWebRTCVoiceClient::getInstance()->updatePosition();
LLWebRTCVoiceClient::getInstance()->sendPositionUpdate(true);
}
+ else
+ {
+ mWebRTCAudioInterface->setMute(mMuted);
+ }
}
break;
}