summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/llvoicevivox.cpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/indra/newview/llvoicevivox.cpp b/indra/newview/llvoicevivox.cpp
index 6a91f26b0b..a754e857ac 100644
--- a/indra/newview/llvoicevivox.cpp
+++ b/indra/newview/llvoicevivox.cpp
@@ -164,6 +164,7 @@ static void killGateway()
{
if (sGatewayPtr)
{
+ sGatewayPump.stopListening("VivoxDaemonPump");
sGatewayPtr->kill();
}
}
@@ -602,11 +603,14 @@ bool LLVivoxVoiceClient::endAndDisconnectSession()
bool LLVivoxVoiceClient::callbackEndDaemon(const LLSD& data)
{
- terminateAudioSession(false);
- closeSocket();
- cleanUp();
- LLVoiceClient::getInstance()->setUserPTTState(false);
- gAgent.setVoiceConnected(false);
+ if (!LLAppViewer::isExiting())
+ {
+ terminateAudioSession(false);
+ closeSocket();
+ cleanUp();
+ LLVoiceClient::getInstance()->setUserPTTState(false);
+ gAgent.setVoiceConnected(false);
+ }
sGatewayPump.stopListening("VivoxDaemonPump");
return false;
}