X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/684dface9a4b18f4e51bf734a881c9cdf0610675..ce903b6f06bb2c3846654e98e9c598b96ac1d82a:/src/common/protocol.cpp diff --git a/src/common/protocol.cpp b/src/common/protocol.cpp index 42b770e55d..75981c5bb3 100644 --- a/src/common/protocol.cpp +++ b/src/common/protocol.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: protocol.cpp +// Name: src/common/protocol.cpp // Purpose: Implement protocol base class // Author: Guilhem Lavaux // Modified by: @@ -9,22 +9,22 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "protocol.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" #ifdef __BORLANDC__ - #pragma hdrstop + #pragma hdrstop #endif #if wxUSE_PROTOCOL #include "wx/protocol/protocol.h" + +#ifndef WX_PRECOMP + #include "wx/module.h" +#endif + #include "wx/url.h" -#include "wx/module.h" #include @@ -45,8 +45,12 @@ wxProtoInfo::wxProtoInfo(const wxChar *name, const wxChar *serv, { m_cinfo = info; m_needhost = need_host1; +#if wxUSE_URL next = wxURL::ms_protocols; wxURL::ms_protocols = this; +#else + next = NULL; +#endif } ///////////////////////////////////////////////////////////////// @@ -74,16 +78,16 @@ bool wxProtocol::Reconnect() if (!GetPeer(addr)) { Close(); - return FALSE; + return false; } if (!Close()) - return FALSE; - + return false; + if (!Connect(addr)) - return FALSE; + return false; - return TRUE; + return true; } // ---------------------------------------------------------------------------- @@ -167,46 +171,6 @@ wxProtocolError wxProtocol::ReadLine(wxString& result) return ReadLine(this, result); } -// old function which only chops '\n' and not '\r\n' -wxProtocolError GetLine(wxSocketBase *sock, wxString& result) -{ -#define PROTO_BSIZE 2048 - size_t avail, size; - char tmp_buf[PROTO_BSIZE], tmp_str[PROTO_BSIZE]; - char *ret; - bool found; - - avail = sock->Read(tmp_buf, PROTO_BSIZE).LastCount(); - if (sock->Error() || avail == 0) - return wxPROTO_NETERR; - - memcpy(tmp_str, tmp_buf, avail); - - // Not implemented on all systems - // ret = (char *)memccpy(tmp_str, tmp_buf, '\n', avail); - found = FALSE; - for (ret=tmp_str;ret < (tmp_str+avail); ret++) - if (*ret == '\n') - { - found = TRUE; - break; - } - - if (!found) - return wxPROTO_PROTERR; - - *ret = 0; - - result = wxString::FromAscii( tmp_str ); - result = result.Left(result.Length()-1); - - size = ret-tmp_str+1; - sock->Unread(&tmp_buf[size], avail-size); - - return wxPROTO_NOERR; -#undef PROTO_BSIZE -} #endif // wxUSE_SOCKETS #endif // wxUSE_PROTOCOL -