aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/llmessage/llpumpio.cpp
diff options
context:
space:
mode:
authorJacek Antonelli2008-08-15 23:44:52 -0500
committerJacek Antonelli2008-08-15 23:44:52 -0500
commit0340e6d3dea28e7bb1da9dc67ac4c2b57354279f (patch)
treedf9029fa98b28a23c44409598764f282c14c4e16 /linden/indra/llmessage/llpumpio.cpp
parentSecond Life viewer sources 1.14.0.0 (diff)
downloadmeta-impy-0340e6d3dea28e7bb1da9dc67ac4c2b57354279f.zip
meta-impy-0340e6d3dea28e7bb1da9dc67ac4c2b57354279f.tar.gz
meta-impy-0340e6d3dea28e7bb1da9dc67ac4c2b57354279f.tar.bz2
meta-impy-0340e6d3dea28e7bb1da9dc67ac4c2b57354279f.tar.xz
Second Life viewer sources 1.14.0.1
Diffstat (limited to '')
-rw-r--r--linden/indra/llmessage/llpumpio.cpp15
1 files changed, 7 insertions, 8 deletions
diff --git a/linden/indra/llmessage/llpumpio.cpp b/linden/indra/llmessage/llpumpio.cpp
index c1f1821..4ce15b9 100644
--- a/linden/indra/llmessage/llpumpio.cpp
+++ b/linden/indra/llmessage/llpumpio.cpp
@@ -221,16 +221,15 @@ bool LLPumpIO::setConditional(LLIOPipe* pipe, const apr_pollfd_t* poll)
221 { 221 {
222 // remove any matching poll file descriptors for this pipe. 222 // remove any matching poll file descriptors for this pipe.
223 LLIOPipe::ptr_t pipe_ptr(pipe); 223 LLIOPipe::ptr_t pipe_ptr(pipe);
224 224 LLChainInfo::conditionals_t::iterator it;
225 LLChainInfo::conditionals_t::iterator it = (*mCurrentChain).mDescriptors.begin(); 225 it = (*mCurrentChain).mDescriptors.begin();
226 LLChainInfo::conditionals_t::iterator end = (*mCurrentChain).mDescriptors.end(); 226 while(it != (*mCurrentChain).mDescriptors.end())
227 while (it != end)
228 { 227 {
229 LLChainInfo::pipe_conditional_t& value = (*it); 228 LLChainInfo::pipe_conditional_t& value = (*it);
230 if ( pipe_ptr == value.first ) 229 if(pipe_ptr == value.first)
231 { 230 {
232 ll_delete_apr_pollset_fd_client_data()(value); 231 ll_delete_apr_pollset_fd_client_data()(value);
233 (*mCurrentChain).mDescriptors.erase(it++); 232 it = (*mCurrentChain).mDescriptors.erase(it);
234 mRebuildPollset = true; 233 mRebuildPollset = true;
235 } 234 }
236 else 235 else
@@ -472,7 +471,7 @@ void LLPumpIO::pump()
472// << (*run_chain).mChainLinks[0].mPipe 471// << (*run_chain).mChainLinks[0].mPipe
473// << " because we reached the end." << llendl; 472// << " because we reached the end." << llendl;
474#endif 473#endif
475 mRunningChains.erase(run_chain++); 474 run_chain = mRunningChains.erase(run_chain);
476 continue; 475 continue;
477 } 476 }
478 } 477 }
@@ -551,7 +550,7 @@ void LLPumpIO::pump()
551 (*run_chain).mDescriptors.begin(), 550 (*run_chain).mDescriptors.begin(),
552 (*run_chain).mDescriptors.end(), 551 (*run_chain).mDescriptors.end(),
553 ll_delete_apr_pollset_fd_client_data()); 552 ll_delete_apr_pollset_fd_client_data());
554 mRunningChains.erase(run_chain++); 553 run_chain = mRunningChains.erase(run_chain);
555 554
556 // *NOTE: may not always need to rebuild the pollset. 555 // *NOTE: may not always need to rebuild the pollset.
557 mRebuildPollset = true; 556 mRebuildPollset = true;