X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FSocket%2FClientSocketHandle.ct;h=4f368851dd04dcdb0a594671fef6c141df04bf9b;hb=0e87ffe1cd4de41a27a29c427d7538789e4e3a43;hp=4a22c919aa1a67f09c0db4e23944e23f0e8252a0;hpb=9cb871b939efe93e35dd96808d25089399acfc46;p=senf.git diff --git a/senf/Socket/ClientSocketHandle.ct b/senf/Socket/ClientSocketHandle.ct index 4a22c91..4f36885 100644 --- a/senf/Socket/ClientSocketHandle.ct +++ b/senf/Socket/ClientSocketHandle.ct @@ -32,9 +32,9 @@ #include #define prefix_ -///////////////////////////////ct.p//////////////////////////////////////// +//-///////////////////////////////////////////////////////////////////////////////////////////////// -/////////////////////////////////////////////////////////////////////////// +//-///////////////////////////////////////////////////////////////////////////////////////////////// // senf::detail::ReadRange template @@ -57,7 +57,7 @@ readfrom(Handle & handle, ForwardWritableRange & range, typename Handle::Address return std::copy(buffer, handle.readfrom(buffer,buffer+nread,addr), boost::begin(range)); } -/////////////////////////////////////////////////////////////////////////// +//-///////////////////////////////////////////////////////////////////////////////////////////////// // senf::detail::WriteRange template @@ -86,10 +86,10 @@ writeto(Handle & handle, ForwardReadableRange & range, typename Handle::Address return i; } -/////////////////////////////////////////////////////////////////////////// +//-///////////////////////////////////////////////////////////////////////////////////////////////// // senf::ClientSocketHandle -//////////////////////////////////////// +//-///////////////////////////////////////////////////////////////////////////////////////////////// // reading and writing // senf::ClientSocketHandle::read @@ -130,15 +130,14 @@ template prefix_ void senf::ClientSocketHandle::readfrom(Sequence & container, Address & from, unsigned limit) { - unsigned nread (available()); - if (limit>0 && nread>limit) - nread = limit; - container.resize(nread); + if (limit == 0) + limit = available(); + container.resize(limit); container.erase(readfrom( std::make_pair(container.begin(), container.end()), from ), container.end()); } -//////////////////////////////////////// +//-///////////////////////////////////////////////////////////////////////////////////////////////// // private members // senf::ClientSocketHandle::available @@ -160,7 +159,7 @@ prefix_ unsigned senf::ClientSocketHandle::available() return nread; } -///////////////////////////////ct.e//////////////////////////////////////// +//-///////////////////////////////////////////////////////////////////////////////////////////////// #undef prefix_