Skip to content

Commit 36fa01f

Browse files
committed
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.
1 parent fa7caf6 commit 36fa01f

File tree

2 files changed

+1
-1
lines changed

2 files changed

+1
-1
lines changed

src/init.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,6 @@ void Shutdown()
200200
pwalletMain->Flush(false);
201201
#endif
202202
MapPort(false);
203-
g_connman->Stop();
204203
g_connman.reset();
205204

206205
StopTorControl();

src/net.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2205,6 +2205,7 @@ void CConnman::DeleteNode(CNode* pnode)
22052205

22062206
CConnman::~CConnman()
22072207
{
2208+
Stop();
22082209
}
22092210

22102211
size_t CConnman::GetAddressCount() const

0 commit comments

Comments
 (0)