diff --git a/server/gameserver/player.cc b/server/gameserver/player.cc index 579bf99..8cffb8e 100644 --- a/server/gameserver/player.cc +++ b/server/gameserver/player.cc @@ -911,6 +911,7 @@ void Player::_CMReconnect(f8::MsgHdr& hdr, const cs::CMReconnect& msg) { int old_socket_handle = socket_handle; if (socket_handle != 0) { + GGListener::Instance()->ForceCloseChildSocket(socket_handle); PlayerMgr::Instance()->RemovePlayerBySocket(socket_handle); } socket_handle = hdr.socket_handle; diff --git a/server/gameserver/roommgr.cc b/server/gameserver/roommgr.cc index 6939253..22d17be 100644 --- a/server/gameserver/roommgr.cc +++ b/server/gameserver/roommgr.cc @@ -180,7 +180,7 @@ void RoomMgr::_CMReconnect(f8::MsgHdr& hdr, const cs::CMReconnect& msg) .SetSender(socket_handle), [] (const a8::XParams& param) { - GGListener::Instance()->ForceCloseClient(param.sender); + GGListener::Instance()->ForceCloseChildSocket(param.sender); } ); };