From 40c56deea35b6001e00c366887be8a29fa38d03c Mon Sep 17 00:00:00 2001 From: Roman Borschel Date: Thu, 9 Apr 2020 12:41:34 +0200 Subject: [PATCH] Do not prematurely emit CustomProtocolClosed on connection close. (#5595) --- .../client/network/src/protocol/generic_proto/behaviour.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/substrate/client/network/src/protocol/generic_proto/behaviour.rs b/substrate/client/network/src/protocol/generic_proto/behaviour.rs index 49744a5d86..e62edb3733 100644 --- a/substrate/client/network/src/protocol/generic_proto/behaviour.rs +++ b/substrate/client/network/src/protocol/generic_proto/behaviour.rs @@ -914,7 +914,7 @@ impl NetworkBehaviour for GenericProto { // in which case `CustomProtocolClosed` was already emitted. let closed = open.is_empty(); open.retain(|c| c != conn); - if !closed { + if open.is_empty() && !closed { debug!(target: "sub-libp2p", "External API <= Closed({})", peer_id); let event = GenericProtoOut::CustomProtocolClosed { peer_id: peer_id.clone(),