Skip to content

Commit 7126216

Browse files
ak88LukaszRozmej
authored andcommitted
Fix Network.DiagTracerEnabled object disposed (#6912)
Co-authored-by: Lukasz Rozmej <[email protected]>
1 parent 16b26cf commit 7126216

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

src/Nethermind/Nethermind.Network/P2P/ProtocolHandlers/P2PProtocolHandler.cs

+2-1
Original file line numberDiff line numberDiff line change
@@ -303,9 +303,10 @@ public override void DisconnectProtocol(DisconnectReason disconnectReason, strin
303303
if (Logger.IsTrace)
304304
Logger.Trace($"Sending disconnect {disconnectReason} ({details}) to {Session.Node:s}");
305305
DisconnectMessage message = new(disconnectReason.ToEthDisconnectReason());
306-
Send(message);
307306
if (NetworkDiagTracer.IsEnabled)
308307
NetworkDiagTracer.ReportDisconnect(Session.Node.Address, $"Local {disconnectReason} {details}");
308+
Send(message);
309+
309310
}
310311

311312
private void SendHello()

src/Nethermind/Nethermind.Network/P2P/ProtocolHandlers/ProtocolHandlerBase.cs

+8-2
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,14 @@ protected internal void Send<T>(T message) where T : P2PMessage
8181
{
8282
Interlocked.Increment(ref Counter);
8383
if (Logger.IsTrace) Logger.Trace($"{Counter} Sending {typeof(T).Name}");
84-
int size = Session.DeliverMessage(message);
85-
if (NetworkDiagTracer.IsEnabled) NetworkDiagTracer.ReportOutgoingMessage(Session.Node?.Address, Name, message.ToString(), size);
84+
if (NetworkDiagTracer.IsEnabled)
85+
{
86+
string messageString = message.ToString();
87+
int size = Session.DeliverMessage(message);
88+
NetworkDiagTracer.ReportOutgoingMessage(Session.Node?.Address, Name, messageString, size);
89+
}
90+
else
91+
Session.DeliverMessage(message);
8692
}
8793

8894
protected async Task CheckProtocolInitTimeout()

0 commit comments

Comments
 (0)