An excellent spot by @david60.
Even if it isn't causing the fd issue we're looking for, this should be fixed.
409 | @@ -410,7 +410,7 @@ CNode* CConnman::ConnectNode(CAddress addrConnect, const char *pszDest, bool fCo 410 | 411 | // Connect 412 | bool connected = false; 413 | - SOCKET hSocket; 414 | + SOCKET hSocket = INVALID_SOCKET;
Why didn't a linter catch this uninitialized variable?
utACK
utACK 62e07f0.
I'm currently running git bisect to figure out where the crashes started. Once that's done I'll also check if this commit makes them go away.
utACK https://github.com/bitcoin/bitcoin/pull/12326/commits/96dbd381cf0ded169406bab3b1ba911a13d563c5 - this is obviously correct. Hope it solves the issue too.