From a0a59882c19f48d62459bf03ad28dfb7975e0dd0 Mon Sep 17 00:00:00 2001 From: Rider Linden Date: Fri, 6 Feb 2026 14:22:13 -0800 Subject: fetchKeywordsFileCoro would invoke loadKeywordsIntoLLSD as part of the coroutine. This would trigger an attempt to get a mutex which will fail in a coro. Instead post the cleanup back to the mainthread. --- indra/newview/llsyntaxid.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/indra/newview/llsyntaxid.cpp b/indra/newview/llsyntaxid.cpp index d9b2726992..16274f59bc 100644 --- a/indra/newview/llsyntaxid.cpp +++ b/indra/newview/llsyntaxid.cpp @@ -148,9 +148,14 @@ void LLSyntaxIdLSL::fetchKeywordsFileCoro(std::string url, std::string fileSpec) if (isSupportedVersion(result)) { - setKeywordsXml(result); - cacheFile(fileSpec, result); - loadKeywordsIntoLLSD(); + // Shuttle this task to the main coro/worker. + // loadKeywordsIntoLLSD will attempt to get a mutex which is not coro aware. + LLAppViewer::instance()->postToMainCoro([this, result, fileSpec]() + { + setKeywordsXml(result); + cacheFile(fileSpec, result); + loadKeywordsIntoLLSD(); + }); } else { -- cgit v1.3