diff options
author | Andrew Meadows <andrew@lindenlab.com> | 2009-01-17 01:29:45 +0000 |
---|---|---|
committer | Andrew Meadows <andrew@lindenlab.com> | 2009-01-17 01:29:45 +0000 |
commit | 15a6d273cc00e1f4f9f9d56d8c878b46b283b289 (patch) | |
tree | f4ac9fa1f96c6d246b571412ce6a67ee1837794d /indra/llmessage | |
parent | 446c55538e1fb12d8a1feb541edf99c16bb29121 (diff) |
svn merge -r108142:108148 svn+ssh://svn.lindenlab.com/svn/linden/qa/maint-server/maint-server-5-r108113
Diffstat (limited to 'indra/llmessage')
-rw-r--r-- | indra/llmessage/llpumpio.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/indra/llmessage/llpumpio.cpp b/indra/llmessage/llpumpio.cpp index 70f28f3a3e..3e3f0b37a7 100644 --- a/indra/llmessage/llpumpio.cpp +++ b/indra/llmessage/llpumpio.cpp @@ -181,6 +181,8 @@ LLPumpIO::LLPumpIO(apr_pool_t* pool) : mCallbackMutex(NULL), mCurrentChain(mRunningChains.end()) { + mCurrentChain = mRunningChains.end(); + LLMemType m1(LLMemType::MTYPE_IO_PUMP); initialize(pool); } @@ -274,12 +276,11 @@ bool LLPumpIO::setTimeoutSeconds(F32 timeout) void LLPumpIO::adjustTimeoutSeconds(F32 delta) { - // If no chain is running, bail - if(mRunningChains.end() == mCurrentChain) + // Ensure a chain is running + if(mRunningChains.end() != mCurrentChain) { - return; + (*mCurrentChain).adjustTimeoutSeconds(delta); } - (*mCurrentChain).adjustTimeoutSeconds(delta); } static std::string events_2_string(apr_int16_t events) @@ -549,7 +550,7 @@ void LLPumpIO::pump(const S32& poll_timeout) //lldebugs << "Running chain count: " << mRunningChains.size() << llendl; running_chains_t::iterator run_chain = mRunningChains.begin(); bool process_this_chain = false; - for(; run_chain != mRunningChains.end(); ) + while( run_chain != mRunningChains.end() ) { PUMP_DEBUG; if((*run_chain).mInit |