net: only delete CConnman if it's been created

In the case of (for example) an already-running bitcoind, the shutdown sequence
begins before CConnman has been created, leading to a null-pointer dereference
when g_connman->Stop() is called.

Instead, Just let the CConnman dtor take care of stopping.
This commit is contained in:
Cory Fields 2016-09-13 14:42:55 -04:00
parent fa7caf6d91
commit 36fa01f217
2 changed files with 1 additions and 1 deletions

View file

@ -200,7 +200,6 @@ void Shutdown()
pwalletMain->Flush(false); pwalletMain->Flush(false);
#endif #endif
MapPort(false); MapPort(false);
g_connman->Stop();
g_connman.reset(); g_connman.reset();
StopTorControl(); StopTorControl();

View file

@ -2205,6 +2205,7 @@ void CConnman::DeleteNode(CNode* pnode)
CConnman::~CConnman() CConnman::~CConnman()
{ {
Stop();
} }
size_t CConnman::GetAddressCount() const size_t CConnman::GetAddressCount() const