Commit 2909c05d authored by justcoding121's avatar justcoding121

#232 experimental fix

parent 6c15f3c7
...@@ -19,7 +19,10 @@ namespace Titanium.Web.Proxy.Helpers ...@@ -19,7 +19,10 @@ namespace Titanium.Web.Proxy.Helpers
private readonly byte[] staticBuffer; private readonly byte[] staticBuffer;
private readonly Encoding encoding; private readonly Encoding encoding;
private static readonly ConcurrentQueue<byte[]> buffers = new ConcurrentQueue<byte[]>(); private static readonly ConcurrentQueue<byte[]> buffers
= new ConcurrentQueue<byte[]>();
private volatile bool disposed = false;
internal CustomBinaryReader(CustomBufferedStream stream, int bufferSize) internal CustomBinaryReader(CustomBufferedStream stream, int bufferSize)
{ {
...@@ -154,9 +157,18 @@ namespace Titanium.Web.Proxy.Helpers ...@@ -154,9 +157,18 @@ namespace Titanium.Web.Proxy.Helpers
public void Dispose() public void Dispose()
{ {
buffers.Enqueue(staticBuffer); if (!disposed)
{
disposed = true;
buffers.Enqueue(staticBuffer);
}
} }
/// <summary>
/// Increase size of buffer and copy existing content to new buffer
/// </summary>
/// <param name="buffer"></param>
/// <param name="size"></param>
private void ResizeBuffer(ref byte[] buffer, long size) private void ResizeBuffer(ref byte[] buffer, long size)
{ {
var newBuffer = new byte[size]; var newBuffer = new byte[size];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment