diff --git a/Projects/Scripts/Scripts.csproj b/Projects/Scripts/Scripts.csproj index ec0097b1c..f3b49987e 100644 --- a/Projects/Scripts/Scripts.csproj +++ b/Projects/Scripts/Scripts.csproj @@ -4,6 +4,7 @@ Server netcoreapp3.0 Scripts.CS + true true @@ -11,12 +12,16 @@ true x64 + ..\..\Distribution\Assemblies + ..\..\Distribution\Assemblies ..\..\Distribution\Assemblies TRACE;DEBUG true false + ..\..\Distribution\Assemblies + ..\..\Distribution\Assemblies ..\..\Distribution\Assemblies true diff --git a/Projects/Server/Insensitive.cs b/Projects/Server/Insensitive.cs index c46c0a6e4..8156b85a1 100644 --- a/Projects/Server/Insensitive.cs +++ b/Projects/Server/Insensitive.cs @@ -25,45 +25,20 @@ namespace Server { public static class Insensitive { - public static IComparer Comparer{ get; } = StringComparer.OrdinalIgnoreCase; + public static IComparer Comparer { get; } = StringComparer.OrdinalIgnoreCase; public static int Compare(string a, string b) => Comparer.Compare(a, b); - public static bool Equals(string a, string b) - { - if (a == null && b == null) - return true; - if (a == null || b == null || a.Length != b.Length) - return false; + public static bool Equals(string a, string b) => + a == null && b == null || a != null && b != null && a.Length == b.Length && Comparer.Compare(a, b) == 0; - return Comparer.Compare(a, b) == 0; - } + public static bool StartsWith(string a, string b) => + a != null && b != null && a.Length >= b.Length && Comparer.Compare(a.Substring(0, b.Length), b) == 0; - public static bool StartsWith(string a, string b) - { - if (a == null || b == null || a.Length < b.Length) - return false; + public static bool EndsWith(string a, string b) => + a != null && b != null && a.Length >= b.Length && Comparer.Compare(a.Substring(a.Length - b.Length), b) == 0; - return Comparer.Compare(a.Substring(0, b.Length), b) == 0; - } - - public static bool EndsWith(string a, string b) - { - if (a == null || b == null || a.Length < b.Length) - return false; - - return Comparer.Compare(a.Substring(a.Length - b.Length), b) == 0; - } - - public static bool Contains(string a, string b) - { - if (a == null || b == null || a.Length < b.Length) - return false; - - a = a.ToLower(); - b = b.ToLower(); - - return a.IndexOf(b) >= 0; - } + public static bool Contains(string a, string b) => + a != null && b != null && a.Length >= b.Length && a.IndexOf(b, StringComparison.OrdinalIgnoreCase) >= 0; } } diff --git a/Projects/Server/Main.cs b/Projects/Server/Main.cs index db8a9a209..53a975885 100644 --- a/Projects/Server/Main.cs +++ b/Projects/Server/Main.cs @@ -474,8 +474,8 @@ namespace Server m_Signal.WaitOne(); Task.WaitAll( - Task.Run(() => Mobile.ProcessDeltaQueue()), - Task.Run(() => Item.ProcessDeltaQueue()) + Task.Run(Mobile.ProcessDeltaQueue), + Task.Run(Item.ProcessDeltaQueue) ); Timer.Slice(); diff --git a/Projects/Server/Network/MessagePump.cs b/Projects/Server/Network/MessagePump.cs index 30243de09..0919630d9 100644 --- a/Projects/Server/Network/MessagePump.cs +++ b/Projects/Server/Network/MessagePump.cs @@ -48,8 +48,8 @@ namespace Server.Network public void DoWork() { - int count = m_WorkQueue.Count; - while (count-- > 0) + int count = 0; + while (!m_WorkQueue.IsEmpty && count++ < 250) { if (!m_WorkQueue.TryDequeue(out Work work)) break; diff --git a/Projects/Server/Server.csproj b/Projects/Server/Server.csproj index c564d5e6b..e7ce12400 100644 --- a/Projects/Server/Server.csproj +++ b/Projects/Server/Server.csproj @@ -14,6 +14,7 @@ 2019 netcoreapp3.0 true + true TRACE;DEBUG @@ -38,15 +39,15 @@ 8.0 - + zlib.dll PreserveNewest - + rdrand.dll PreserveNewest - + rdrand.so PreserveNewest