# # # patch "netxx/socket.cxx" # from [ca9a59bb394a41f6aae1527678162678d5e60419] # to [16b61df71104d616a1dc68adc6da02160ce1714a] # ============================================================ --- netxx/socket.cxx ca9a59bb394a41f6aae1527678162678d5e60419 +++ netxx/socket.cxx 16b61df71104d616a1dc68adc6da02160ce1714a @@ -172,9 +172,9 @@ Netxx::signed_size_type Netxx::Socket::w Netxx::signed_size_type Netxx::Socket::write (const void *buffer, size_type length, const Timeout &timeout) { const char *buffer_ptr = static_cast(buffer); - signed_size_type rc, bytes_written=0; + signed_size_type rc; - while (length) { + for (;;) { if (timeout && !writable(timeout)) return -1; if ( (rc = send(socketfd_, buffer_ptr, length, 0)) < 0) { @@ -213,12 +213,10 @@ Netxx::signed_size_type Netxx::Socket::w } } - buffer_ptr += rc; - bytes_written += rc; - length -= rc; + break; } - return bytes_written; + return rc; } //#################################################################### Netxx::signed_size_type Netxx::Socket::read (void *buffer, size_type length, const Timeout &timeout)