From 4f37f0a3b97c6097818c6c5791ee65d7cfb01354 Mon Sep 17 00:00:00 2001 From: HipsterCat Date: Tue, 12 Feb 2019 15:42:42 +0100 Subject: [PATCH] Added checks and fixes --- GiantsLauncher.csproj | 1 + Program.cs | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/GiantsLauncher.csproj b/GiantsLauncher.csproj index c85e191..08fa7d9 100644 --- a/GiantsLauncher.csproj +++ b/GiantsLauncher.csproj @@ -51,6 +51,7 @@ + diff --git a/Program.cs b/Program.cs index 03f5789..f7becb1 100644 --- a/Program.cs +++ b/Program.cs @@ -36,6 +36,11 @@ namespace GiantsLauncher string server_ok = ""; foreach (string server in SERVERS) { + if (server.Length > 15) + { + Console.WriteLine("Server {0} has length > 15, skipping.", server); + continue; + } Console.WriteLine("Testing {0}", server); if (TestServer(server)) { @@ -53,7 +58,15 @@ namespace GiantsLauncher Byte[] data = System.Text.Encoding.ASCII.GetBytes(server_ok); writer.Seek(offset, SeekOrigin.Begin); //move cursor to the position writer.Write(data);//write it + // add padding + for (int i = 0; i < 15 - data.Length; i++) + { + writer.Write((byte)0);//write it + } } + } else + { + Console.WriteLine("No working master server found... RIP."); } Process.Start(GIANTS_PATH); } @@ -133,6 +146,11 @@ namespace GiantsLauncher return false; } + if (!client.Connected) + { + return false; + } + NetworkStream stream = client.GetStream(); // Buffer to store the response bytes.