mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2025-02-07 03:34:15 +00:00
check for pending LeaseSet request
This commit is contained in:
parent
1bbb86d304
commit
c61ed150b7
@ -464,14 +464,24 @@ namespace client
|
|||||||
{
|
{
|
||||||
LeaseSetRequest * request = new LeaseSetRequest (m_Service);
|
LeaseSetRequest * request = new LeaseSetRequest (m_Service);
|
||||||
request->requestComplete = requestComplete;
|
request->requestComplete = requestComplete;
|
||||||
m_LeaseSetRequests[dest] = request;
|
auto ret = m_LeaseSetRequests.insert (std::pair<i2p::data::IdentHash, LeaseSetRequest *>(dest,request));
|
||||||
if (!SendLeaseSetRequest (dest, floodfill, request))
|
if (ret.second) // inserted
|
||||||
{
|
{
|
||||||
// request failed
|
if (!SendLeaseSetRequest (dest, floodfill, request))
|
||||||
|
{
|
||||||
|
// request failed
|
||||||
|
if (request->requestComplete) request->requestComplete (false);
|
||||||
|
delete request;
|
||||||
|
m_LeaseSetRequests.erase (dest);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else // duplicate
|
||||||
|
{
|
||||||
|
LogPrint (eLogError, "Request of ", dest.ToBase64 (), " is pending already");
|
||||||
|
// TODO: queue up requests
|
||||||
if (request->requestComplete) request->requestComplete (false);
|
if (request->requestComplete) request->requestComplete (false);
|
||||||
delete request;
|
delete request;
|
||||||
m_LeaseSetRequests.erase (dest);
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
LogPrint (eLogError, "No floodfills found");
|
LogPrint (eLogError, "No floodfills found");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user