X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2f0add5ae0f51eaac054102121ff289e0f2580bd..96aaaff8654713ad989bd833476856e9df06f8a8:/src/common/sckstrm.cpp diff --git a/src/common/sckstrm.cpp b/src/common/sckstrm.cpp index 8b16fcca90..b4498a51d0 100644 --- a/src/common/sckstrm.cpp +++ b/src/common/sckstrm.cpp @@ -41,6 +41,12 @@ wxSocketOutputStream::~wxSocketOutputStream() size_t wxSocketOutputStream::OnSysWrite(const void *buffer, size_t size) { + size_t ret = m_o_socket->Write((const char *)buffer, size).LastCount(); + m_lasterror = m_o_socket->Error() ? wxSTREAM_WRITE_ERROR : wxSTREAM_NO_ERROR; + return ret; + + // Patch 1476893 caused Advise to hang, needs further investigation +#if 0 const char *buf = (const char *)buffer; size_t count = 0; @@ -63,6 +69,7 @@ size_t wxSocketOutputStream::OnSysWrite(const void *buffer, size_t size) m_lasterror = wxSTREAM_NO_ERROR; return count; +#endif } // --------------------------------------------------------------------------- @@ -80,6 +87,12 @@ wxSocketInputStream::~wxSocketInputStream() size_t wxSocketInputStream::OnSysRead(void *buffer, size_t size) { + size_t ret = m_i_socket->Read((char *)buffer, size).LastCount(); + m_lasterror = m_i_socket->Error() ? wxSTREAM_READ_ERROR : wxSTREAM_NO_ERROR; + return ret; + + // Patch 1476893 caused Advise to hang, needs further investigation +#if 0 char *buf = (char *)buffer; size_t count = 0; @@ -102,6 +115,7 @@ size_t wxSocketInputStream::OnSysRead(void *buffer, size_t size) m_lasterror = wxSTREAM_NO_ERROR; return count; +#endif } // ---------------------------------------------------------------------------