From 1658421403c4f0643732efd25a338ac47a3c32f4 Mon Sep 17 00:00:00 2001 From: Shauren Date: Thu, 9 Jul 2015 10:26:30 +0200 Subject: Core/Battle.net: Only send one IP address for a realm - fixes waiting time to join realm if the wrong address gets picked by the client first (local address for external client) Closes #14891 --- src/server/bnetserver/Server/Session.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'src/server/bnetserver/Server/Session.cpp') diff --git a/src/server/bnetserver/Server/Session.cpp b/src/server/bnetserver/Server/Session.cpp index 822a90b5222..d5ea76c2974 100644 --- a/src/server/bnetserver/Server/Session.cpp +++ b/src/server/bnetserver/Server/Session.cpp @@ -521,9 +521,7 @@ void Battlenet::Session::HandleJoinRequestV2(WoWRealm::JoinRequestV2 const& join LoginDatabase.DirectPExecute("UPDATE account SET sessionkey = '%s', last_ip = '%s', last_login = NOW(), locale = %u, failed_logins = 0, os = '%s' WHERE id = %u", ByteArrayToHexStr(sessionKey, 40, true).c_str(), GetRemoteIpAddress().to_string().c_str(), GetLocaleByName(_locale), _os.c_str(), _gameAccountInfo->Id); - joinResponse->IPv4.emplace_back(realm->ExternalAddress, realm->Port); - if (realm->ExternalAddress != realm->LocalAddress) - joinResponse->IPv4.emplace_back(realm->LocalAddress, realm->Port); + joinResponse->IPv4.push_back(realm->GetAddressForClient(GetRemoteIpAddress())); AsyncWrite(joinResponse); } -- cgit v1.2.3