diff options
author | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2018-09-27 19:54:10 +0100 |
---|---|---|
committer | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2018-09-27 19:54:10 +0100 |
commit | a84ee929a5221aec07bcc93815ca6c57bb8ab6bb (patch) | |
tree | ecf9694b9e772161b67c8b0935362b0e05cc7c7d /indra/newview/llvoicechannel.cpp | |
parent | 4d4255c27b45ed5e32fe7c4870e2ce3ed10cb140 (diff) | |
parent | 58aef8beaf79dc83546a7b080014ca5030733ac8 (diff) |
merge
Diffstat (limited to 'indra/newview/llvoicechannel.cpp')
-rw-r--r-- | indra/newview/llvoicechannel.cpp | 14 |
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); |