mirror of
https://github.com/ElementsProject/elements.git
synced 2026-08-17 13:07:54 +02:00
Merge 320e518b90 into merged_master (Bitcoin PR bitcoin/bitcoin#21750)
This commit is contained in:
commit
d95da2d3b1
1 changed files with 3 additions and 12 deletions
15
src/net.cpp
15
src/net.cpp
|
|
@ -1224,19 +1224,10 @@ void CConnman::DisconnectNodes()
|
|||
std::list<CNode*> vNodesDisconnectedCopy = vNodesDisconnected;
|
||||
for (CNode* pnode : vNodesDisconnectedCopy)
|
||||
{
|
||||
// wait until threads are done using it
|
||||
// Destroy the object only after other threads have stopped using it.
|
||||
if (pnode->GetRefCount() <= 0) {
|
||||
bool fDelete = false;
|
||||
{
|
||||
TRY_LOCK(pnode->cs_vSend, lockSend);
|
||||
if (lockSend) {
|
||||
fDelete = true;
|
||||
}
|
||||
}
|
||||
if (fDelete) {
|
||||
vNodesDisconnected.remove(pnode);
|
||||
DeleteNode(pnode);
|
||||
}
|
||||
vNodesDisconnected.remove(pnode);
|
||||
DeleteNode(pnode);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue