summaryrefslogtreecommitdiff
path: root/indra/newview/llvoicechannel.cpp
diff options
context:
space:
mode:
authorAndreyL ProductEngine <alihatskiy@productengine.com>2018-09-27 13:09:04 +0300
committerAndreyL ProductEngine <alihatskiy@productengine.com>2018-09-27 13:09:04 +0300
commit4745de5f4b856146983cee5f50e78d051a9f6079 (patch)
tree2994a19d27eba1851f97ccf0cc0ab7e70a7b64a9 /indra/newview/llvoicechannel.cpp
parentd53011a6420eab9b32d55604272db02b3c238389 (diff)
parent58aef8beaf79dc83546a7b080014ca5030733ac8 (diff)
Merged in lindenlab/viewer-release
Diffstat (limited to 'indra/newview/llvoicechannel.cpp')
-rw-r--r--indra/newview/llvoicechannel.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/indra/newview/llvoicechannel.cpp b/indra/newview/llvoicechannel.cpp
index c58e98b3fb..f971554c9d 100644
--- a/indra/newview/llvoicechannel.cpp
+++ b/indra/newview/llvoicechannel.cpp
@@ -74,10 +74,18 @@ LLVoiceChannel::LLVoiceChannel(const LLUUID& session_id, const std::string& sess
LLVoiceChannel::~LLVoiceChannel()
{
- // Must check instance exists here, the singleton MAY have already been destroyed.
- if(LLVoiceClient::instanceExists())
+ if (sSuspendedVoiceChannel == this)
{
- LLVoiceClient::getInstance()->removeObserver(this);
+ sSuspendedVoiceChannel = NULL;
+ }
+ if (sCurrentVoiceChannel == this)
+ {
+ sCurrentVoiceChannel = NULL;
+ // Must check instance exists here, the singleton MAY have already been destroyed.
+ if(LLVoiceClient::instanceExists())
+ {
+ LLVoiceClient::getInstance()->removeObserver(this);
+ }
}
sVoiceChannelMap.erase(mSessionID);