diff --git a/src/netcode/d_net.c b/src/netcode/d_net.c
index 4860d8688b4a8b998b59523c6cf52502c69d10ca..852123a3ed9baff65f64b83744cafcf63500c8a8 100644
--- a/src/netcode/d_net.c
+++ b/src/netcode/d_net.c
@@ -456,7 +456,12 @@ void Net_ConnectionTimeout(INT32 node)
 	nodes[node].flags |= NF_TIMEOUT;
 
 	if (server)
-		SendKicksForNode(node, KICK_MSG_TIMEOUT | KICK_MSG_KEEP_BODY);
+	{
+		if (netnodes[node].ingame)
+			SendKicksForNode(node, KICK_MSG_TIMEOUT | KICK_MSG_KEEP_BODY);
+		else
+			Net_CloseConnection(node | FORCECLOSE);
+	}
 	else
 		CL_HandleTimeout();