diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2020-08-22 00:37:23 +0300 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2020-08-22 00:44:52 +0300 |
commit | 0e0ba2fd866e6f6f3b89008dbe7d3a8e0c826ff5 (patch) | |
tree | 0ed859e8152e1f1737da48c557cf7d16df7b69c8 /indra | |
parent | b856745048212175eac19536e40cf563b874f6b4 (diff) |
SL-13830 One more coroutine crash
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/llvoicevivox.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/indra/newview/llvoicevivox.cpp b/indra/newview/llvoicevivox.cpp index 42a1cf95a7..970570b135 100644 --- a/indra/newview/llvoicevivox.cpp +++ b/indra/newview/llvoicevivox.cpp @@ -411,6 +411,7 @@ void LLVivoxVoiceClient::terminate() } else { + mRelogRequested = false; killGateway(); } } @@ -660,12 +661,18 @@ void LLVivoxVoiceClient::voiceControlCoro() U32 retry = 0; - while (gAgent.getTeleportState() != LLAgent::TELEPORT_NONE) + while (gAgent.getTeleportState() != LLAgent::TELEPORT_NONE && !LLApp::isExiting()) { LL_DEBUGS("Voice") << "Suspending voiceControlCoro() momentarily for teleport. Tuning: " << mTuningMode << ". Relog: " << mRelogRequested << LL_ENDL; llcoro::suspendUntilTimeout(1.0); } + if (LLApp::isExiting()) + { + mIsCoroutineActive = false; + return; + } + do { bool success = startAndConnectSession(); |