From e489cf4b2834008853c6d8b7ad9e3ba2f07bcac8 Mon Sep 17 00:00:00 2001 From: cryptocode Date: Mon, 4 Nov 2019 17:04:08 +0100 Subject: [PATCH] Fix lazy mutex unlock via mutex (#2382) --- nano/node/bootstrap/bootstrap.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nano/node/bootstrap/bootstrap.cpp b/nano/node/bootstrap/bootstrap.cpp index 9dfd89c9..3684d344 100644 --- a/nano/node/bootstrap/bootstrap.cpp +++ b/nano/node/bootstrap/bootstrap.cpp @@ -787,13 +787,13 @@ void nano::bootstrap_attempt::lazy_add (nano::hash_or_account const & hash_or_ac void nano::bootstrap_attempt::lazy_requeue (nano::block_hash const & hash_a, nano::block_hash const & previous_a, bool confirmed_a) { - nano::lock_guard lazy_lock (lazy_mutex); + nano::unique_lock lazy_lock (lazy_mutex); // Add only known blocks auto existing (lazy_blocks.find (hash_a)); if (existing != lazy_blocks.end ()) { lazy_blocks.erase (existing); - lazy_mutex.unlock (); + lazy_lock.unlock (); requeue_pull (nano::pull_info (hash_a, hash_a, previous_a, static_cast (1), confirmed_a ? std::numeric_limits::max () : node->network_params.bootstrap.lazy_destinations_retry_limit)); } }