1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-15 11:03:00 +01:00
This commit is contained in:
Yaroslav Tretyakov
2016-06-09 16:04:02 -06:00
committed by Ted John
parent 1761907f57
commit 379b85f94c
3 changed files with 11 additions and 10 deletions

View File

@@ -102,15 +102,16 @@ bool NetworkConnection::SendPacket(NetworkPacket& packet)
const void * buffer = &tosend[packet.transferred];
size_t bufferSize = tosend.size() - packet.transferred;
if (Socket->SendData(buffer, bufferSize))
size_t sent = Socket->SendData(buffer, bufferSize);
if (sent > 0)
{
packet.transferred += sent;
}
if (packet.transferred == tosend.size())
{
packet.transferred += bufferSize;
return true;
}
else
{
return false;
}
return false;
}
void NetworkConnection::QueuePacket(std::unique_ptr<NetworkPacket> packet, bool front)

View File

@@ -339,7 +339,7 @@ public:
}
}
bool SendData(const void * buffer, size_t size) override
size_t SendData(const void * buffer, size_t size) override
{
if (_status != SOCKET_STATUS_CONNECTED)
{
@@ -354,11 +354,11 @@ public:
int sentBytes = send(_socket, (const char *)bufferStart, (int)remainingSize, FLAG_NO_PIPE);
if (sentBytes == SOCKET_ERROR)
{
return false;
return totalSent;
}
totalSent += sentBytes;
} while (totalSent < size);
return true;
return totalSent;
}
NETWORK_READPACKET ReceiveData(void * buffer, size_t size, size_t * sizeReceived) override

View File

@@ -53,7 +53,7 @@ public:
virtual void Connect(const char * address, uint16 port) abstract;
virtual void ConnectAsync(const char * address, uint16 port) abstract;
virtual bool SendData(const void * buffer, size_t size) abstract;
virtual size_t SendData(const void * buffer, size_t size) abstract;
virtual NETWORK_READPACKET ReceiveData(void * buffer, size_t size, size_t * sizeReceived) abstract;
virtual void Disconnect() abstract;