diff --git a/nano/node/transport/transport.cpp b/nano/node/transport/transport.cpp index 0a67f1db4..129477c10 100644 --- a/nano/node/transport/transport.cpp +++ b/nano/node/transport/transport.cpp @@ -81,17 +81,20 @@ void nano::transport::channel::send (nano::message & message_a, std::function lock{ channel_mutex }; peering_endpoint = endpoint; } nano::endpoint nano::transport::channel::get_peering_endpoint () const { + nano::unique_lock lock{ channel_mutex }; if (peering_endpoint) { return *peering_endpoint; } else { + lock.unlock (); return get_endpoint (); } }