From 0fadd32a74946f56ae3a98cb6839b9e98f393180 Mon Sep 17 00:00:00 2001 From: lidgren Date: Sat, 26 May 2012 08:32:32 +0000 Subject: [PATCH] Changed how ReadAllFields determines available write methods --- Lidgren.Network/NetBuffer.cs | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/Lidgren.Network/NetBuffer.cs b/Lidgren.Network/NetBuffer.cs index e530b0d..e114ecb 100644 --- a/Lidgren.Network/NetBuffer.cs +++ b/Lidgren.Network/NetBuffer.cs @@ -6,7 +6,7 @@ namespace Lidgren.Network { public partial class NetBuffer { - private const int c_overAllocateAmount = 4; + protected const int c_overAllocateAmount = 4; private static readonly Dictionary s_readMethods; private static readonly Dictionary s_writeMethods; @@ -75,14 +75,9 @@ namespace Lidgren.Network MethodInfo[] methods = typeof(NetIncomingMessage).GetMethods(BindingFlags.Instance | BindingFlags.Public); foreach (MethodInfo mi in methods) { - if (mi.GetParameters().Length == 0 && mi.Name.StartsWith("Read", StringComparison.InvariantCulture)) + if (mi.GetParameters().Length == 0 && mi.Name.StartsWith("Read", StringComparison.InvariantCulture) && mi.Name.Substring(4) == mi.ReturnType.Name) { - string n = mi.Name.Substring(4); - foreach (Type it in integralTypes) - { - if (it.Name == n) - s_readMethods[it] = mi; - } + s_readMethods[mi.ReturnType] = mi; } }