Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff -u orig/UserPacketHandler.cpp new/UserPacketHandler.cpp
- --- orig/UserPacketHandler.cpp Wed Jan 10 07:34:03 2018
- +++ new/UserPacketHandler.cpp Wed Jan 10 07:35:40 2018
- @@ -318,6 +318,7 @@
- BindEx(0xD, CUserPacketHandler::AutoSoulshotExPacket);
- BindEx(0xF, CUserPacketHandler::RequestEnchantSkill);
- BindEx(0x34, CUserPacketHandler::RequestEnchantSkillRouteChange);
- + BindEx(0x46, CUserPacketHandler::EnchantSkillInfoDetail); // fix enchant type > 3 crash
- BindEx(0x4C, CUserPacketHandler::TryToPutEnchantTargetItem);
- WriteCall(0x92EDFB, PacketHandlerHook, 2);
- @@ -748,6 +749,13 @@
- }
- unguard;
- return true;
- +}
- +
- +bool CUserPacketHandler::EnchantSkillInfoDetail(CUserSocket *pSocket, const unsigned char *packet)
- +{
- + // when enchant type > 3 server would crash
- + if (*reinterpret_cast<UINT32*>(packet) > 3) return true
- + return UserCallback(0x91A734)(pSocket, packet);
- }
- bool CUserPacketHandler::CustomPacket(CUserSocket *pSocket, const unsigned char* packet)
- diff -u orig/UserPacketHandler.h new/UserPacketHandler.h
- --- orig/UserPacketHandler.h Wed Jan 10 07:34:06 2018
- +++ new/UserPacketHandler.h Wed Jan 10 07:35:45 2018
- @@ -111,6 +111,7 @@
- static bool WithdrawPartyPacket(CUserSocket *pSocket, const unsigned char *packet);
- static bool WithdrawPledgePacket(CUserSocket *pSocket, const unsigned char *packet);
- static bool LoginPacket(CUserSocket *pSocket, const unsigned char *packet);
- + static bool EnchantSkillInfoDetail(CUserSocket *pSocket, const unsigned char *packet);
- };
Advertisement
Add Comment
Please, Sign In to add comment