From f2764e41e091eb04db482965137b354dbabea858 Mon Sep 17 00:00:00 2001 From: Robert MacGregor Date: Sun, 8 Feb 2015 01:58:27 -0500 Subject: [PATCH] Fixed T2 crash when running in Listen mode --- t2csri/clientSide.cs | 6 ++++++ t2csri/serverSide.cs | 8 +++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/t2csri/clientSide.cs b/t2csri/clientSide.cs index 152157c..ea67298 100644 --- a/t2csri/clientSide.cs +++ b/t2csri/clientSide.cs @@ -290,6 +290,12 @@ function t2csri_processDownloadCompletion() function t2csri_gameServerHexAddress() { %ip = ServerConnection.getAddress(); + + // DarkDragonDX: Fix listen server crashes because .getAddress() returns + // "local" when in listen + if (trim(%ip) $= "local") + %ip = "IP:127.0.0.1:" @ $Host::Port; // Build the local IP ourselves + %ip = getSubStr(%ip, strstr(%ip, ":") + 1, strlen(%ip)); %ip = getSubStr(%ip, 0, strstr(%ip, ":")); %ip = strReplace(%ip, ".", " "); diff --git a/t2csri/serverSide.cs b/t2csri/serverSide.cs index e200dff..8111a6a 100644 --- a/t2csri/serverSide.cs +++ b/t2csri/serverSide.cs @@ -56,6 +56,12 @@ function serverCmdt2csri_sendCertChunk(%client, %chunk) function t2csri_gameClientHexAddress(%client) { %ip = %client.getAddress(); + + // DarkDragonDX: Fix listen server crashes because .getAddress() returns + // "local" when in listen + if (trim(%ip) $= "local") + %ip = "IP:127.0.0.1:" @ $Host::Port; // Just build the local IP + %ip = getSubStr(%ip, strstr(%ip, ":") + 1, strlen(%ip)); %ip = getSubStr(%ip, 0, strstr(%ip, ":")); %ip = strReplace(%ip, ".", " "); @@ -291,7 +297,7 @@ package t2csri_server // clan support will be implemented via delegation to a community server function GameConnection::getAuthInfo(%client) { - if (%client.getAddress() $= "Local" && %client.t2csri_authInfo $= "") + if (trim(%client.getAddress()) $= "local" && %client.t2csri_authInfo $= "") %client.t2csri_authInfo = WONGetAuthInfo(); return %client.t2csri_authInfo; }