diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2020-08-18 16:00:25 +0300 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2020-08-18 16:23:59 +0300 |
commit | 58ba75f6dd4c7c5c93ea9f14cef7f2194aa00e08 (patch) | |
tree | ead8ebdd520623c8a5e34c1a1c26890db269fb4a | |
parent | fa0cc7b6d2700b888310d7723114415f7db4f194 (diff) |
SL-13783 Workaround for enqueueCoprocedure() crash #2
-rw-r--r-- | indra/llmessage/llcoproceduremanager.cpp | 11 | ||||
-rw-r--r-- | indra/llmessage/llcoproceduremanager.h | 1 | ||||
-rw-r--r-- | indra/newview/llviewerassetstorage.cpp | 1 |
3 files changed, 6 insertions, 7 deletions
diff --git a/indra/llmessage/llcoproceduremanager.cpp b/indra/llmessage/llcoproceduremanager.cpp index 0684f47df2..3f55bda1e3 100644 --- a/indra/llmessage/llcoproceduremanager.cpp +++ b/indra/llmessage/llcoproceduremanager.cpp @@ -140,12 +140,6 @@ LLCoprocedureManager::~LLCoprocedureManager() close(); } -void LLCoprocedureManager::initSingleton() -{ - // workaround until we get mutex into initializePool - initializePool("VAssetStorage"); -} - LLCoprocedureManager::poolPtr_t LLCoprocedureManager::initializePool(const std::string &poolName) { // Attempt to look up a pool size in the configuration. If found use that @@ -197,8 +191,13 @@ LLUUID LLCoprocedureManager::enqueueCoprocedure(const std::string &pool, const s void LLCoprocedureManager::setPropertyMethods(SettingQuery_t queryfn, SettingUpdate_t updatefn) { + // functions to discover and store the pool sizes mPropertyQueryFn = queryfn; mPropertyDefineFn = updatefn; + + // workaround until we get mutex into initializePool + initializePool("VAssetStorage"); + initializePool("Upload"); } //------------------------------------------------------------------------- diff --git a/indra/llmessage/llcoproceduremanager.h b/indra/llmessage/llcoproceduremanager.h index 8540ced8cc..70204ba02b 100644 --- a/indra/llmessage/llcoproceduremanager.h +++ b/indra/llmessage/llcoproceduremanager.h @@ -40,7 +40,6 @@ class LLCoprocedureManager : public LLSingleton < LLCoprocedureManager > { LLSINGLETON(LLCoprocedureManager); virtual ~LLCoprocedureManager(); - /*virtual*/ void initSingleton(); public: typedef boost::function<U32(const std::string &)> SettingQuery_t; diff --git a/indra/newview/llviewerassetstorage.cpp b/indra/newview/llviewerassetstorage.cpp index cacdee7e83..54f80a2995 100644 --- a/indra/newview/llviewerassetstorage.cpp +++ b/indra/newview/llviewerassetstorage.cpp @@ -49,6 +49,7 @@ /// LLViewerAssetRequest ///---------------------------------------------------------------------------- + // There is also PoolSizeVAssetStorage value in setting that should mirror this name static const std::string VIEWER_ASSET_STORAGE_CORO_POOL = "VAssetStorage"; /** |