diff options
author | Tess Chu <tess@lindenlab.com> | 2007-07-11 21:29:02 +0000 |
---|---|---|
committer | Tess Chu <tess@lindenlab.com> | 2007-07-11 21:29:02 +0000 |
commit | 57b8fef824b6d7f37c5be5812ebffa39ab2e8093 (patch) | |
tree | f89014544fc276b283a36eb2e0cb52e93806a44a /indra/llmessage/lliosocket.cpp | |
parent | a6769f262ff910949a7e1c81cf98e52ddfc2d44a (diff) |
svn merge --ignore-ancestry svn+ssh://svn/svn/linden/release@65088 svn+ssh://svn/svn/linden/branches/release-candidate@65078 -> release Paired by Tess and rdw.
Diffstat (limited to 'indra/llmessage/lliosocket.cpp')
-rw-r--r-- | indra/llmessage/lliosocket.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/indra/llmessage/lliosocket.cpp b/indra/llmessage/lliosocket.cpp index e96b23f134..d1e4a8af31 100644 --- a/indra/llmessage/lliosocket.cpp +++ b/indra/llmessage/lliosocket.cpp @@ -401,6 +401,7 @@ LLIOPipe::EStatus LLIOSocketWriter::process_impl( PUMP_DEBUG; apr_size_t len; bool done = false; + apr_status_t status = APR_SUCCESS; while(it != end) { @@ -408,9 +409,8 @@ LLIOPipe::EStatus LLIOSocketWriter::process_impl( if((*it).isOnChannel(channels.in())) { PUMP_DEBUG; - // *FIX: check return code - sockets will fail (broken, etc.) len = (apr_size_t)segment.size(); - apr_status_t status = apr_socket_send( + status = apr_socket_send( mDestination->getSocket(), (const char*)segment.data(), &len); @@ -418,12 +418,12 @@ LLIOPipe::EStatus LLIOSocketWriter::process_impl( // completed immediately' error from apr_socket_send. In this // case we break and the data will be sent the next time the chain // is pumped. -#if LL_WINDOWS - if (status == 730035) + if(APR_STATUS_IS_EAGAIN(status)) + { + ll_apr_warn_status(status); break; -#else - (void) status; -#endif + } + mLastWritten = segment.data() + len - 1; PUMP_DEBUG; |