diff --git a/csharp/src/Ice/ConnectionI.cs b/csharp/src/Ice/ConnectionI.cs index 56efa21..e8d355a 100644 --- a/csharp/src/Ice/ConnectionI.cs +++ b/csharp/src/Ice/ConnectionI.cs @@ -1451,6 +1451,7 @@ namespace Ice _writeStream.getBuffer().clear(); _readStream.clear(); _readStream.getBuffer().clear(); + _incomingCache = null; if(_callback != null) { diff --git a/csharp/src/Ice/StreamSocket.cs b/csharp/src/Ice/StreamSocket.cs index d492cae..0e42741 100644 --- a/csharp/src/Ice/StreamSocket.cs +++ b/csharp/src/Ice/StreamSocket.cs @@ -231,6 +231,7 @@ namespace IceInternal throw new SocketException((int)_readEventArgs.SocketError); } int ret = _readEventArgs.BytesTransferred; + _readEventArgs.SetBuffer(null, 0, 0); #else int ret = _fd.EndReceive(_readResult); _readResult = null; @@ -355,6 +356,7 @@ namespace IceInternal throw new SocketException((int)_writeEventArgs.SocketError); } int ret = _writeEventArgs.BytesTransferred; + _writeEventArgs.SetBuffer(null, 0, 0); #else int ret = _fd.EndSend(_writeResult); _writeResult = null;