summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFedja Beader <fedja@protonmail.ch>2025-04-11 12:54:44 +0200
committerFedja Beader <fedja@protonmail.ch>2025-04-11 12:56:08 +0200
commit86c516420a38c28b3cb705c0ff0a8462c9fb29c3 (patch)
treeec70c5a767d4a10e1e37e56486452a5284101098
parent315588b76204ca3dfe15ac29b1e896b85f6c808d (diff)
downloadmanaplus-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.cpp11
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)