From e4350fb9ef1a44416f0ef7873595db41b05dafc4 Mon Sep 17 00:00:00 2001 From: Andrey Kleshchev Date: Wed, 19 Aug 2020 21:27:58 +0300 Subject: SL-13811 Crash on coroprocedure Coroprosedure should stop on 'stop' exception --- indra/llmessage/llcoproceduremanager.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'indra') diff --git a/indra/llmessage/llcoproceduremanager.cpp b/indra/llmessage/llcoproceduremanager.cpp index 3f55bda1e3..969cd162fb 100644 --- a/indra/llmessage/llcoproceduremanager.cpp +++ b/indra/llmessage/llcoproceduremanager.cpp @@ -415,6 +415,14 @@ void LLCoprocedurePool::coprocedureInvokerCoro( { coproc->mProc(httpAdapter, coproc->mId); } + catch (const LLCoros::Stop &) + { + LL_INFOS("CoProcMgr") << "Viewer is shutting Down. Stopping coprocedure('" << coproc->mName + << "', id=" << coproc->mId.asString() + << ") in pool '" << mPoolName << "'" << LL_ENDL; + mActiveCoprocs.erase(itActive); + throw; // let toplevel handle this as LLContinueError + } catch (...) { LOG_UNHANDLED_EXCEPTION(STRINGIZE("Coprocedure('" << coproc->mName -- cgit v1.2.3