diff options
author | Fedja Beader <fedja@protonmail.ch> | 2025-04-11 12:54:44 +0200 |
---|---|---|
committer | Fedja Beader <fedja@protonmail.ch> | 2025-04-11 12:56:08 +0200 |
commit | 86c516420a38c28b3cb705c0ff0a8462c9fb29c3 (patch) | |
tree | ec70c5a767d4a10e1e37e56486452a5284101098 | |
parent | 315588b76204ca3dfe15ac29b1e896b85f6c808d (diff) | |
download | manaplus-packet_limiter_file_version.tar.gz manaplus-packet_limiter_file_version.tar.bz2 manaplus-packet_limiter_file_version.tar.xz manaplus-packet_limiter_file_version.zip |
Fix packet limiter file being updated for no reasonpacket_limiter_file_version
Prolific use of immediate constants strikes again.
Side note: why are these limits not in clientdata?
-rw-r--r-- | src/net/packetlimiter.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/net/packetlimiter.cpp b/src/net/packetlimiter.cpp index 2859ff205..d9637c5c4 100644 --- a/src/net/packetlimiter.cpp +++ b/src/net/packetlimiter.cpp @@ -44,6 +44,9 @@ struct PacketLimit final }; PacketLimit mPacketLimits[CAST_SIZE(PacketType::PACKET_SIZE) + 1]; +// remember to increment this if you (massively) change the above, +// so that the limits file on user's installations is properly discarded. +const int PACKET_LIMIT_FILE_VERSION = 4; void PacketLimiter::initPacketLimiter() { @@ -200,7 +203,7 @@ void PacketLimiter::initPacketLimiter() return; } - const int ver = atoi(line); + const int fileVersion = atoi(line); for (int f = 0; f < CAST_S32(PacketType::PACKET_SIZE); @@ -209,7 +212,7 @@ void PacketLimiter::initPacketLimiter() if (!inPacketFile.getline(line, 100)) break; - if (!(ver == 1 && + if (!(fileVersion == 1 && (static_cast<PacketTypeT>(f) == PacketType::PACKET_DROP || static_cast<PacketTypeT>(f) == PacketType::PACKET_NPC_NEXT))) @@ -218,7 +221,7 @@ void PacketLimiter::initPacketLimiter() } } inPacketFile.close(); - if (ver < 5) + if (fileVersion < PACKET_LIMIT_FILE_VERSION) writePacketLimits(packetLimitsName); } } @@ -235,7 +238,7 @@ void PacketLimiter::writePacketLimits(const std::string &packetLimitsName) outPacketFile.close(); return; } - outPacketFile << "4" << std::endl; + outPacketFile << PACKET_LIMIT_FILE_VERSION << std::endl; for (int f = 0; f < CAST_S32(PacketType::PACKET_SIZE); f ++) { outPacketFile << toString(mPacketLimits[f].timeLimit) |