Skip to content
Snippets Groups Projects
Commit a2b5f44b authored by Andrey Kleshchev's avatar Andrey Kleshchev
Browse files

Merge branch 'DRTVWR-476' into DRTVWR-501-maint

parents 370a82b7 77f5a06a
Branches
No related tags found
No related merge requests found
...@@ -3204,9 +3204,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string> ...@@ -3204,9 +3204,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>archive</key> <key>archive</key>
<map> <map>
<key>hash</key> <key>hash</key>
<string>5ba21b80695975ab1e1b1c79d0f10c10</string> <string>c5ab9d9d7482e48cd76f4bf391900a8c</string>
<key>url</key> <key>url</key>
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/55879/522561/viewer_manager-2.0.539630-darwin64-539630.tar.bz2</string> <string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/43369/385585/viewer_manager-2.0.531000-darwin64-531000.tar.bz2</string>
</map> </map>
<key>name</key> <key>name</key>
<string>darwin64</string> <string>darwin64</string>
...@@ -3228,9 +3228,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string> ...@@ -3228,9 +3228,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>archive</key> <key>archive</key>
<map> <map>
<key>hash</key> <key>hash</key>
<string>0f788eb745fc062ad737824836e48691</string> <string>6b10d7407686d9e12e63576256581e3e</string>
<key>url</key> <key>url</key>
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/55880/522567/viewer_manager-2.0.539630-windows-539630.tar.bz2</string> <string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/43370/385592/viewer_manager-2.0.531000-windows-531000.tar.bz2</string>
</map> </map>
<key>name</key> <key>name</key>
<string>windows</string> <string>windows</string>
...@@ -3241,7 +3241,7 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string> ...@@ -3241,7 +3241,7 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>source_type</key> <key>source_type</key>
<string>hg</string> <string>hg</string>
<key>version</key> <key>version</key>
<string>2.0.539630</string> <string>2.0.531000</string>
</map> </map>
<key>vlc-bin</key> <key>vlc-bin</key>
<map> <map>
......
...@@ -279,11 +279,14 @@ LLCoprocedurePool::LLCoprocedurePool(const std::string &poolName, size_t size): ...@@ -279,11 +279,14 @@ LLCoprocedurePool::LLCoprocedurePool(const std::string &poolName, size_t size):
mPendingCoprocs(boost::make_shared<CoprocQueue_t>(DEFAULT_QUEUE_SIZE)), mPendingCoprocs(boost::make_shared<CoprocQueue_t>(DEFAULT_QUEUE_SIZE)),
mHTTPPolicy(LLCore::HttpRequest::DEFAULT_POLICY_ID), mHTTPPolicy(LLCore::HttpRequest::DEFAULT_POLICY_ID),
mCoroMapping() mCoroMapping()
{
try
{ {
// store in our LLTempBoundListener so that when the LLCoprocedurePool is // store in our LLTempBoundListener so that when the LLCoprocedurePool is
// destroyed, we implicitly disconnect from this LLEventPump // destroyed, we implicitly disconnect from this LLEventPump
// Monitores application status
mStatusListener = LLEventPumps::instance().obtain("LLApp").listen( mStatusListener = LLEventPumps::instance().obtain("LLApp").listen(
poolName, poolName + "_pool", // Make sure it won't repeat names from lleventcoro
[pendingCoprocs = mPendingCoprocs, poolName](const LLSD& status) [pendingCoprocs = mPendingCoprocs, poolName](const LLSD& status)
{ {
auto& statsd = status["status"]; auto& statsd = status["status"];
...@@ -298,6 +301,19 @@ LLCoprocedurePool::LLCoprocedurePool(const std::string &poolName, size_t size): ...@@ -298,6 +301,19 @@ LLCoprocedurePool::LLCoprocedurePool(const std::string &poolName, size_t size):
} }
return false; return false;
}); });
}
catch (const LLEventPump::DupListenerName &)
{
// This shounldn't be possible since LLCoprocedurePool is supposed to have unique names,
// yet it somehow did happen, as result pools got '_pool' suffix and this catch.
//
// If this somehow happens again it is better to crash later on shutdown due to pump
// not stopping coroutine and see warning in logs than on startup or during login.
LL_WARNS("CoProcMgr") << "Attempted to register dupplicate listener name: " << poolName
<< "_pool. Failed to start listener." << LL_ENDL;
llassert(0); // Fix Me! Ignoring missing listener!
}
for (size_t count = 0; count < mPoolSize; ++count) for (size_t count = 0; count < mPoolSize; ++count)
{ {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment