Subj : src/sbbs3/main.cpp To : Git commit to main/sbbs/master From : Rob Swindell (on Windows) Date : Tue Sep 19 2023 06:37 pm https://gitlab.synchro.net/main/sbbs/-/commit/e5f64faf337040f12844c4cc Modified Files: src/sbbs3/main.cpp Log Message: Log a critical error message if a node is WFC, but its socket is still in use This should avoid/work-around issue #630 Nelgin's terminal server log indicated that the node's configuration was being reloaded for a new client connection (which doesn't normally/always happen, only when there's been a config file change or a node "rerun" requested), while there was still a user online using that node. This would explain the segfault (configuration fields being freed and reallocated). The node_socket[] array indicates when a node thread is actively servicing a client, so it should contain INVALID_SOCKET for the any node's that WFC. If it doesn't, that means something/someone changed the node's status value to 0 (WFC) in the node.dab file while the node was still in-use. Let's not crash in this case and rather just log the message and give the client the next available node (if any). .