aboutsummaryrefslogtreecommitdiff
path: root/src/query.cc
diff options
context:
space:
mode:
authorfusion32 <marcopuzziello@gmail.com>2025-10-16 04:23:52 -0300
committerfusion32 <marcopuzziello@gmail.com>2025-10-16 04:23:52 -0300
commit01a6e8dbe42fb6571ad846bee5e1d8cc7c9fba5e (patch)
treecccdd754cb6c428ab0e3c3b6a8d0cd1003ff43b0 /src/query.cc
parent9825f08f2b46b147faa48e4d127c93694522e6d6 (diff)
downloadquerymanager-01a6e8dbe42fb6571ad846bee5e1d8cc7c9fba5e.tar.gz
querymanager-01a6e8dbe42fb6571ad846bee5e1d8cc7c9fba5e.zip
move ResolveHostName outside of GetCharacterEndpoints
Diffstat (limited to 'src/query.cc')
-rw-r--r--src/query.cc14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/query.cc b/src/query.cc
index b9484c6..c4d81a1 100644
--- a/src/query.cc
+++ b/src/query.cc
@@ -587,8 +587,18 @@ static void LoginAccountTx(TDatabase *Database, TQuery *Query,
for(int i = 0; i < NumCharacters; i += 1){
Response->WriteString(Characters[i].Name);
Response->WriteString(Characters[i].WorldName);
- Response->Write32BE((uint32)Characters[i].WorldAddress);
- Response->Write16((uint16)Characters[i].WorldPort);
+
+ int WorldAddress;
+ if(ResolveHostName(Characters[i].WorldHost, &WorldAddress)){
+ Response->Write32BE(WorldAddress);
+ Response->Write16(Characters[i].WorldPort);
+ }else{
+ LOG_ERR("Failed to resolve world \"%s\" host name \"%s\" for character \"%s\"",
+ Characters[i].WorldName, Characters[i].WorldHost, Characters[i].Name);
+
+ Response->Write32BE(0);
+ Response->Write16(0);
+ }
}
Response->Write16((uint16)(Account.PremiumDays + Account.PendingPremiumDays));
QueryFinishResponse(Query);