From ea6f6b10dc5571d6050fc38514f6b4d9b8b3f222 Mon Sep 17 00:00:00 2001 From: Ben Adams Date: Sun, 1 Nov 2015 13:27:17 +0000 Subject: [PATCH] Don't capture connection on closure --- src/Microsoft.AspNet.Server.Kestrel/Http/Connection.cs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/Microsoft.AspNet.Server.Kestrel/Http/Connection.cs b/src/Microsoft.AspNet.Server.Kestrel/Http/Connection.cs index ac0540d182..4061f1e80a 100644 --- a/src/Microsoft.AspNet.Server.Kestrel/Http/Connection.cs +++ b/src/Microsoft.AspNet.Server.Kestrel/Http/Connection.cs @@ -13,8 +13,10 @@ namespace Microsoft.AspNet.Server.Kestrel.Http { public class Connection : ConnectionContext, IConnectionControl { - private static readonly Action _readCallback = ReadCallback; - private static readonly Func _allocCallback = AllocCallback; + private static readonly Action _readCallback = + (handle, status, state) => ReadCallback(handle, status, state); + private static readonly Func _allocCallback = + (handle, suggestedsize, state) => AllocCallback(handle, suggestedsize, state); private static long _lastConnectionId; @@ -83,12 +85,12 @@ namespace Microsoft.AspNet.Server.Kestrel.Http if (task.IsFaulted) { connection.Log.LogError("ConnectionFilter.OnConnection", task.Exception); - ConnectionControl.End(ProduceEndType.SocketDisconnect); + connection.ConnectionControl.End(ProduceEndType.SocketDisconnect); } else if (task.IsCanceled) { connection.Log.LogError("ConnectionFilter.OnConnection Canceled"); - ConnectionControl.End(ProduceEndType.SocketDisconnect); + connection.ConnectionControl.End(ProduceEndType.SocketDisconnect); } else {