summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan "Geenz" Goodman <geenz@lindenlab.com>2025-10-10 17:16:47 -0400
committerGitHub <noreply@github.com>2025-10-10 17:16:47 -0400
commit6efde0ba83b6ce2f2735f0c4a532cc405b8a3a8d (patch)
tree9dcf17e224479b87dc5a6e6ad6c2b6e2e78da1f9
parent3445a0199008a10a28c0abb75ab06aee908eacbb (diff)
parent400351f3b8354686c58d78a6234e43d2c82ffd22 (diff)
Merge pull request #4809 from secondlife/andreyk/viewer_4777
#4777 Fix crash on missing factory
-rw-r--r--indra/llwebrtc/llwebrtc.cpp7
-rw-r--r--indra/newview/llimview.cpp4
2 files changed, 11 insertions, 0 deletions
diff --git a/indra/llwebrtc/llwebrtc.cpp b/indra/llwebrtc/llwebrtc.cpp
index 2cf3f6bbf8..f93ad07c1f 100644
--- a/indra/llwebrtc/llwebrtc.cpp
+++ b/indra/llwebrtc/llwebrtc.cpp
@@ -914,6 +914,13 @@ bool LLWebRTCPeerConnectionImpl::initializeConnection(const LLWebRTCPeerConnecti
config.set_max_port(60100);
webrtc::PeerConnectionDependencies pc_dependencies(this);
+ if (mPeerConnectionFactory == nullptr)
+ {
+ RTC_LOG(LS_ERROR) << __FUNCTION__ << "Error creating peer connection, factory doesn't exist";
+ // Too early?
+ mPendingJobs--;
+ return;
+ }
auto error_or_peer_connection = mPeerConnectionFactory->CreatePeerConnectionOrError(config, std::move(pc_dependencies));
if (error_or_peer_connection.ok())
{
diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp
index c1e80ba4f1..bda4afcc04 100644
--- a/indra/newview/llimview.cpp
+++ b/indra/newview/llimview.cpp
@@ -809,6 +809,10 @@ void LLIMModel::LLIMSession::initVoiceChannel(const LLSD& voiceChannelInfo)
{
if (mVoiceChannel)
{
+ if (!voiceChannelInfo.isMap())
+ {
+ LL_WARNS() << "initVoiceChannel called without voiceChannelInfo" << LL_ENDL;
+ }
if (mVoiceChannel->isThisVoiceChannel(voiceChannelInfo))
{
return;