From 9dd4c1d37b199d111f9ffc316fc017c6cbf8d7c7 Mon Sep 17 00:00:00 2001 From: krrios Date: Sun, 18 Jun 2006 20:10:09 +0000 Subject: [PATCH] Made NetState.Send virtual. Lifespan of Packet.UnderlyingStream extended until Packet.Release (previously was freed in Packet.Compile). --- Server/Network/NetState.cs | 4 ++-- Server/Network/Packets.cs | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/Server/Network/NetState.cs b/Server/Network/NetState.cs index babdf0b76..346867691 100644 --- a/Server/Network/NetState.cs +++ b/Server/Network/NetState.cs @@ -482,7 +482,7 @@ namespace Server.Network m_CreatedCallback( this ); } - public void Send( Packet p ) + public virtual void Send( Packet p ) { if ( m_Socket == null || m_BlockAllPackets ) { @@ -730,7 +730,7 @@ namespace Server.Network private bool m_Disposing; - public void Dispose( bool flush ) + public virtual void Dispose( bool flush ) { if ( m_Socket == null || m_Disposing ) return; diff --git a/Server/Network/Packets.cs b/Server/Network/Packets.cs index 439976abc..c2c83a059 100644 --- a/Server/Network/Packets.cs +++ b/Server/Network/Packets.cs @@ -3568,6 +3568,9 @@ namespace Server.Network if ( (m_State & State.Buffered) != 0 ) m_Buffers.ReleaseBuffer( m_CompiledBuffer ); + PacketWriter.ReleaseInstance( m_Stream ); + m_Stream = null; + m_State &= ~(State.Static | State.Acquired | State.Buffered); m_CompiledBuffer = null; @@ -3671,8 +3674,8 @@ namespace Server.Network Buffer.BlockCopy( old, 0, m_CompiledBuffer, 0, length ); } - PacketWriter.ReleaseInstance( m_Stream ); - m_Stream = null; + //PacketWriter.ReleaseInstance( m_Stream ); + //m_Stream = null; } } }