From a3c1c314d06429e0979a191e447e994f72ccb601 Mon Sep 17 00:00:00 2001 From: orignal Date: Tue, 10 Feb 2015 09:39:49 -0500 Subject: [PATCH] don't insert same transit tunnel twice --- Tunnel.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Tunnel.cpp b/Tunnel.cpp index 6ce8348a..de3096d6 100644 --- a/Tunnel.cpp +++ b/Tunnel.cpp @@ -317,7 +317,11 @@ namespace tunnel void Tunnels::AddTransitTunnel (TransitTunnel * tunnel) { std::unique_lock l(m_TransitTunnelsMutex); - m_TransitTunnels[tunnel->GetTunnelID ()] = tunnel; + if (!m_TransitTunnels.insert (std::make_pair (tunnel->GetTunnelID (), tunnel)).second) + { + LogPrint (eLogError, "Transit tunnel ", tunnel->GetTunnelID (), " already exists"); + delete tunnel; + } } void Tunnels::Start ()