Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 772fc64045 | |||
| ae230ef775 |
@@ -76,7 +76,7 @@ size_t TCPClient::readBuffer()
|
|||||||
memcpy(&sizeOfPacket, m_ReadBuffer, sizeof(int));
|
memcpy(&sizeOfPacket, m_ReadBuffer, sizeof(int));
|
||||||
if (sizeOfPacket > m_Socket->available()) {
|
if (sizeOfPacket > m_Socket->available()) {
|
||||||
LOG_WARNING("TCPClient::readBuffer(): We haven't got the whole packet yet.");
|
LOG_WARNING("TCPClient::readBuffer(): We haven't got the whole packet yet.");
|
||||||
return 0;
|
//return 0;
|
||||||
}
|
}
|
||||||
// if the buffer is to small increase the size of it
|
// if the buffer is to small increase the size of it
|
||||||
// TODO if message is huge 1 time the buffer will not decrease.
|
// TODO if message is huge 1 time the buffer will not decrease.
|
||||||
@@ -85,13 +85,16 @@ size_t TCPClient::readBuffer()
|
|||||||
m_ReadBuffer = new char[sizeOfPacket];
|
m_ReadBuffer = new char[sizeOfPacket];
|
||||||
m_BufferSize = sizeOfPacket;
|
m_BufferSize = sizeOfPacket;
|
||||||
}
|
}
|
||||||
|
size_t bytesReceived = 0;
|
||||||
|
while (sizeOfPacket > bytesReceived) {
|
||||||
// Read the rest of the message
|
// Read the rest of the message
|
||||||
size_t bytesReceived = m_Socket->read_some(boost
|
bytesReceived += m_Socket->read_some(boost
|
||||||
::asio::buffer((void*)(m_ReadBuffer), sizeOfPacket),
|
::asio::buffer((void*)(m_ReadBuffer), sizeOfPacket - bytesReceived),
|
||||||
error);
|
error);
|
||||||
if (error) {
|
if (error) {
|
||||||
//LOG_ERROR("receive: %s", error.message().c_str());
|
//LOG_ERROR("receive: %s", error.message().c_str());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if (sizeOfPacket > 1000000)
|
if (sizeOfPacket > 1000000)
|
||||||
LOG_WARNING("The packets received are bigger than 1MB");
|
LOG_WARNING("The packets received are bigger than 1MB");
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user