static void Accept(IAsyncResult result) { if (shuttingDown == false) { // found information: http://www.codeguru.com/csharp/csharp/cs_network/sockets/article.php/c7695 // -Descention Player p = null; try { p = new Player(listen.EndAccept(result)); listen.BeginAccept(new AsyncCallback(Accept), null); } catch (SocketException) { if (p != null) { p.Disconnect(); } } catch (Exception e) { ErrorLog(e); if (p != null) { p.Disconnect(); } } } }