Current bitcoin-master on testnet, `maxconnections=8` in the config file. Running in VM that doesn't have public IP and is not reachable from the Internet.

Wait until you have 8 peers.

```
telnet localhost 18333
```

It will result in:

```
Assertion failed: (nMaxInbound > 0), function AcceptConnection, file net.cpp, line 973.
```

First found in https://github.com/bitcoin/bitcoin/pull/8996, but can be reproduced on master.

{
    LogPrintf("%s\n",__func__);
    if (semOutbound)
        for (int i=0; i<(nMaxOutbound + nMaxFeeler); i++)
            semOutbound->post();
    if (fAddressesInitialized)
    {
        DumpData();
        fAddressesInitialized = false;
    }
    
    BOOST_FOREACH(CNode* pnode, vNodes)
        if (pnode->hSocket != INVALID_SOCKET)
            CloseSocket(pnode->hSocket);
    BOOST_FOREACH(ListenSocket& hListenSocket, vhListenSocket)
        if (hListenSocket.socket != INVALID_SOCKET)
            if (!CloseSocket(hListenSocket.socket))
                LogPrintf("CloseSocket(hListenSocket) failed with error %s\n", NetworkErrorString(WSAGetLastError()));
    
    BOOST_FOREACH(CNode *pnode, vNodes) {
        DeleteNode(pnode);
    }
    BOOST_FOREACH(CNode *pnode, vNodesDisconnected) {