summaryrefslogtreecommitdiff
path: root/src/net
diff options
context:
space:
mode:
Diffstat (limited to 'src/net')
-rw-r--r--src/net/eathena/loginrecv.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/net/eathena/loginrecv.cpp b/src/net/eathena/loginrecv.cpp
index b9abf20aa..555d1a2c1 100644
--- a/src/net/eathena/loginrecv.cpp
+++ b/src/net/eathena/loginrecv.cpp
@@ -45,6 +45,7 @@
#include "debug.h"
extern int packetVersion;
+extern int evolPacketOffset;
namespace EAthena
{
@@ -153,7 +154,7 @@ void LoginRecv::processUpdateHost2(Net::MessageIn &msg)
void LoginRecv::processServerVersion(Net::MessageIn &msg)
{
- msg.readInt16("len");
+ const int len = msg.readInt16("len");
msg.readInt32("unused");
serverVersion = msg.readInt32("server version");
if (serverVersion > 0)
@@ -167,6 +168,10 @@ void LoginRecv::processServerVersion(Net::MessageIn &msg)
logger->log("autofix Hercules packet version to: %d",
packetVersion);
}
+ if (serverVersion >= 16 && len >= 18)
+ {
+ evolPacketOffset = msg.readInt16("evol packet offset");
+ }
}
else
{