mirror of
https://github.com/ElementsProject/elements.git
synced 2026-08-14 12:43:40 +02:00
Clean up global datastructures at shutdown.
This should make detecting leaks much easier.
This commit is contained in:
parent
dfd71bb450
commit
3427517d50
2 changed files with 41 additions and 2 deletions
17
src/net.cpp
17
src/net.cpp
|
|
@ -660,12 +660,12 @@ void ThreadSocketHandler(void* parg)
|
|||
printf("ThreadSocketHandler exited\n");
|
||||
}
|
||||
|
||||
static list<CNode*> vNodesDisconnected;
|
||||
|
||||
void ThreadSocketHandler2(void* parg)
|
||||
{
|
||||
printf("ThreadSocketHandler started\n");
|
||||
list<CNode*> vNodesDisconnected;
|
||||
unsigned int nPrevNodeCount = 0;
|
||||
|
||||
loop
|
||||
{
|
||||
//
|
||||
|
|
@ -1992,6 +1992,7 @@ bool StopNode()
|
|||
Sleep(20);
|
||||
Sleep(50);
|
||||
DumpAddresses();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
@ -2012,6 +2013,18 @@ public:
|
|||
if (closesocket(hListenSocket) == SOCKET_ERROR)
|
||||
printf("closesocket(hListenSocket) failed with error %d\n", WSAGetLastError());
|
||||
|
||||
// clean up some globals (to help leak detection)
|
||||
BOOST_FOREACH(CNode *pnode, vNodes)
|
||||
delete pnode;
|
||||
BOOST_FOREACH(CNode *pnode, vNodesDisconnected)
|
||||
delete pnode;
|
||||
vNodes.clear();
|
||||
vNodesDisconnected.clear();
|
||||
delete semOutbound;
|
||||
semOutbound = NULL;
|
||||
delete pnodeLocalHost;
|
||||
pnodeLocalHost = NULL;
|
||||
|
||||
#ifdef WIN32
|
||||
// Shutdown Windows Sockets
|
||||
WSACleanup();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue