mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-15 11:03:00 +01:00
committed by
Ted John
parent
1761907f57
commit
379b85f94c
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user