fixed reading and double print in client

This commit is contained in:
Erik Frojdh
2019-06-05 15:40:28 +02:00
parent 8cf94537c8
commit b5e4d7d8fb
3 changed files with 7 additions and 7 deletions

View File

@ -43,9 +43,12 @@ DataSocket &DataSocket::operator=(DataSocket &&move) noexcept {
int DataSocket::receiveData(void *buffer, size_t size) {
size_t dataRead = 0;
while (dataRead < size) {
dataRead +=
auto thisRead =
::read(getSocketId(), reinterpret_cast<char *>(buffer) + dataRead,
size - dataRead);
if (thisRead <= 0)
break;
dataRead += thisRead;
}
return dataRead;
}