diff options
| author | Jonathan "Geenz" Goodman <geenz@lindenlab.com> | 2025-10-17 19:30:49 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-17 19:30:49 -0400 |
| commit | 3ca323db9e71a342bf1ca895e23ab180ce048add (patch) | |
| tree | cd52ee85740d6cf788e918187c2b7c196407a7a6 /indra/newview/llvoicewebrtc.cpp | |
| parent | 01a799495b93cb9f7d5b9298bfb57afc99e47e1b (diff) | |
| parent | bbc2ad8fc50b2efb19a40a2db57043690addc492 (diff) | |
Merge pull request #4850 from secondlife/geenz/main-to-develop
Catch some commits that didn't make it back to develop.
Diffstat (limited to 'indra/newview/llvoicewebrtc.cpp')
| -rw-r--r-- | indra/newview/llvoicewebrtc.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/indra/newview/llvoicewebrtc.cpp b/indra/newview/llvoicewebrtc.cpp index 83f104ef01..e6fcc7bd6b 100644 --- a/indra/newview/llvoicewebrtc.cpp +++ b/indra/newview/llvoicewebrtc.cpp @@ -273,6 +273,11 @@ void LLWebRTCVoiceClient::cleanupSingleton() void LLWebRTCVoiceClient::init(LLPumpIO* pump) { // constructor will set up LLVoiceClient::getInstance() + initWebRTC(); +} + +void LLWebRTCVoiceClient::initWebRTC() +{ llwebrtc::init(this); mWebRTCDeviceInterface = llwebrtc::getDeviceInterface(); @@ -293,6 +298,8 @@ void LLWebRTCVoiceClient::terminate() mVoiceEnabled = false; sShuttingDown = true; // so that coroutines won't post more work. llwebrtc::terminate(); + + mWebRTCDeviceInterface = nullptr; } //--------------------------------------------------- @@ -1804,6 +1811,15 @@ void LLWebRTCVoiceClient::onChangeDetailed(const LLMute& mute) } } +void LLWebRTCVoiceClient::userAuthorized(const std::string& user_id, const LLUUID& agentID) +{ + if (sShuttingDown) + { + sShuttingDown = false; // was terminated, restart + initWebRTC(); + } +} + void LLWebRTCVoiceClient::predSetUserMute(const LLWebRTCVoiceClient::sessionStatePtr_t &session, const LLUUID &id, bool mute) { session->setUserMute(id, mute); |
