diff options
author | Rubidium <rubidium@openttd.org> | 2021-04-18 10:27:04 +0200 |
---|---|---|
committer | rubidium42 <rubidium42@users.noreply.github.com> | 2021-04-24 20:42:01 +0200 |
commit | 38d15fc9b788e2c904705d2ba8de4d5f1ff7988d (patch) | |
tree | 3c6f0542a968916b1ac78463cc00a97c9497d2e9 | |
parent | d4f027c03bfc5f632b7d63c125dfa57a7ba89926 (diff) | |
download | openttd-38d15fc9b788e2c904705d2ba8de4d5f1ff7988d.tar.xz |
Codechange: move the logic shrinking of the packets into the Packet itself
-rw-r--r-- | src/network/core/packet.cpp | 5 | ||||
-rw-r--r-- | src/network/core/tcp.cpp | 5 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/network/core/packet.cpp b/src/network/core/packet.cpp index 5cb6716bc..6e6bb51c0 100644 --- a/src/network/core/packet.cpp +++ b/src/network/core/packet.cpp @@ -73,6 +73,11 @@ void Packet::PrepareToSend() this->buffer[1] = GB(this->size, 8, 8); this->pos = 0; // We start reading from here + + /* Reallocate the packet as in 99+% of the times we send at most 25 bytes and + * keeping the other 1400+ bytes wastes memory, especially when someone tries + * to do a denial of service attack! */ + this->buffer = ReallocT(this->buffer, this->size); } /** diff --git a/src/network/core/tcp.cpp b/src/network/core/tcp.cpp index ab18f47a8..c779beb96 100644 --- a/src/network/core/tcp.cpp +++ b/src/network/core/tcp.cpp @@ -65,11 +65,6 @@ void NetworkTCPSocketHandler::SendPacket(Packet *packet) packet->PrepareToSend(); - /* Reallocate the packet as in 99+% of the times we send at most 25 bytes and - * keeping the other 1400+ bytes wastes memory, especially when someone tries - * to do a denial of service attack! */ - packet->buffer = ReallocT(packet->buffer, packet->size); - /* Locate last packet buffered for the client */ p = this->packet_queue; if (p == nullptr) { |