diff --git a/OpenRA.Game/Network/OrderIO.cs b/OpenRA.Game/Network/OrderIO.cs index ce69dc76e9..4d4f7e82b4 100644 --- a/OpenRA.Game/Network/OrderIO.cs +++ b/OpenRA.Game/Network/OrderIO.cs @@ -16,8 +16,14 @@ namespace OpenRA.Network { public static class OrderIO { + static readonly List EmptyOrderList = new List(0); + public static List ToOrderList(this byte[] bytes, World world) { + // PERF: Skip empty order frames, often per client each frame + if (bytes.Length == 4) + return EmptyOrderList; + var ms = new MemoryStream(bytes, 4, bytes.Length - 4); var reader = new BinaryReader(ms); var ret = new List();