diff --git a/src/sbbs3/main.cpp b/src/sbbs3/main.cpp index cc1072abb2584b9c2bd46fedd235e7ed54e24976..283d806aad3458f0b5fd0ab02b19d51cb0c8fa30 100644 --- a/src/sbbs3/main.cpp +++ b/src/sbbs3/main.cpp @@ -5490,6 +5490,12 @@ NO_SSH: if(sbbs->getnodedat(i,&node,1)!=0) continue; if(node.status==NODE_WFC) { + if(node_socket[i - 1] != INVALID_SOCKET) { + lprintf(LOG_CRIT, "%04d !Node %d status is WFC, but the node socket (%d) and thread are still in use!" + ,client_socket, i, node_socket[i - 1]); + sbbs->putnodedat(i, &node); + continue; + } node.status=NODE_LOGON; #ifdef USE_CRYPTLIB if(ssh)