fixed race condition

This commit is contained in:
orignal 2014-10-10 16:48:42 -04:00
parent a7421739bc
commit 22773bd678

View File

@ -300,13 +300,15 @@ namespace tunnel
{
if (pool)
{
{
std::unique_lock<std::mutex> l(m_PoolsMutex);
m_Pools.erase (pool->GetIdentHash ());
}
{
std::unique_lock<std::mutex> l(m_PendingTunnelsMutex);
for (auto it: m_PendingTunnels)
if (it.second->GetTunnelPool () == pool) it.second->SetTunnelPool (nullptr);
}
std::unique_lock<std::mutex> l(m_PoolsMutex);
m_Pools.erase (pool->GetIdentHash ());
delete pool;
}
}