From 6876e7a1d7c611441892c8e2f51c2456ee84b0e7 Mon Sep 17 00:00:00 2001 From: Howard Butler Date: Thu, 6 Jun 2024 09:14:01 -0500 Subject: [PATCH] adapt fix for race condition in arbiter --- entwine/third/arbiter/arbiter.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/entwine/third/arbiter/arbiter.cpp b/entwine/third/arbiter/arbiter.cpp index 1ccbfc89..c3942ff8 100644 --- a/entwine/third/arbiter/arbiter.cpp +++ b/entwine/third/arbiter/arbiter.cpp @@ -353,16 +353,13 @@ std::shared_ptr Arbiter::getDriver(const std::string path) const { const auto type(getProtocol(path)); - { - std::lock_guard lock(m_mutex); - auto it = m_drivers.find(type); - if (it != m_drivers.end()) return it->second; - } + std::lock_guard lock(m_mutex); + auto it = m_drivers.find(type); + if (it != m_drivers.end()) return it->second; const json config = getConfig(m_config); if (auto driver = Driver::create(*m_pool, type, config.dump())) { - std::lock_guard lock(m_mutex); m_drivers[type] = driver; return driver; }