diff --git a/I2NPProtocol.cpp b/I2NPProtocol.cpp index 84fbeafe..95079260 100644 --- a/I2NPProtocol.cpp +++ b/I2NPProtocol.cpp @@ -562,8 +562,16 @@ namespace i2p break; case eI2NPGarlic: LogPrint ("Garlic"); - if (msg->from && msg->from->GetTunnelPool ()) - msg->from->GetTunnelPool ()->ProcessGarlicMessage (msg); + if (msg->from) + { + if (msg->from->GetTunnelPool ()) + msg->from->GetTunnelPool ()->ProcessGarlicMessage (msg); + else + { + LogPrint (eLogInfo, "Local destination for garlic doesn't exist anymore"); + DeleteI2NPMessage (msg); + } + } else i2p::context.ProcessGarlicMessage (msg); break;