diff --git a/Lidgren.Network/NetPeer.Internal.cs b/Lidgren.Network/NetPeer.Internal.cs index 1b100fa..d6b0e01 100644 --- a/Lidgren.Network/NetPeer.Internal.cs +++ b/Lidgren.Network/NetPeer.Internal.cs @@ -69,15 +69,8 @@ namespace Lidgren.Network return; // remove all callbacks regardless of sync context - RestartRemoveCallbacks: - for (int i = 0; i < m_receiveCallbacks.Count; i++) - { - if (m_receiveCallbacks[i].Item2.Equals(callback)) - { - m_receiveCallbacks.RemoveAt(i); - goto RestartRemoveCallbacks; - } - } + m_receiveCallbacks.RemoveAll(tuple => tuple.Item2.Equals(callback)); + if (m_receiveCallbacks.Count < 1) m_receiveCallbacks = null; }