Index: code/branches/core5/src/libraries/network/ClientConnection.cc
===================================================================
--- code/branches/core5/src/libraries/network/ClientConnection.cc	(revision 5850)
+++ code/branches/core5/src/libraries/network/ClientConnection.cc	(revision 5851)
@@ -133,9 +133,9 @@
   }
 
-  void ClientConnection::addClient(ENetEvent* event)
+  void ClientConnection::addPeer(ENetEvent* event)
   {
     assert(0);
   }
-  void ClientConnection::disconnectPeer(ENetEvent* event)
+  void ClientConnection::removePeer(ENetEvent* event)
   {
     this->established_=false;
Index: code/branches/core5/src/libraries/network/ClientConnection.h
===================================================================
--- code/branches/core5/src/libraries/network/ClientConnection.h	(revision 5850)
+++ code/branches/core5/src/libraries/network/ClientConnection.h	(revision 5851)
@@ -54,6 +54,6 @@
     inline bool isConnected(){ return this->established_; }
   private:
-    virtual void addClient(ENetEvent* event);
-    virtual void disconnectPeer(ENetEvent* event);
+    virtual void addPeer(ENetEvent* event);
+    virtual void removePeer(ENetEvent* event);
     
     bool disconnectConnection();
Index: code/branches/core5/src/libraries/network/Connection.cc
===================================================================
--- code/branches/core5/src/libraries/network/Connection.cc	(revision 5850)
+++ code/branches/core5/src/libraries/network/Connection.cc	(revision 5851)
@@ -83,8 +83,8 @@
         // log handling ================
         case ENET_EVENT_TYPE_CONNECT:
-          addClient( &event );
+          addPeer( &event );
           break;
         case ENET_EVENT_TYPE_DISCONNECT:
-          disconnectPeer( &event );
+          removePeer( &event );
           break;
         case ENET_EVENT_TYPE_RECEIVE:
Index: code/branches/core5/src/libraries/network/Connection.h
===================================================================
--- code/branches/core5/src/libraries/network/Connection.h	(revision 5850)
+++ code/branches/core5/src/libraries/network/Connection.h	(revision 5851)
@@ -67,6 +67,6 @@
     
     void processQueue();
-    virtual void addClient(ENetEvent* event)=0;
-    virtual void disconnectPeer(ENetEvent* event)=0;
+    virtual void addPeer(ENetEvent* event)=0;
+    virtual void removePeer(ENetEvent* event)=0;
     virtual bool processPacket(ENetEvent* event);
     
Index: code/branches/core5/src/libraries/network/Server.cc
===================================================================
--- code/branches/core5/src/libraries/network/Server.cc	(revision 5850)
+++ code/branches/core5/src/libraries/network/Server.cc	(revision 5851)
@@ -270,5 +270,5 @@
 
 
-  void Server::addClient(ENetEvent *event){
+  void Server::addPeer(ENetEvent *event){
     static unsigned int newid=1;
 
@@ -289,4 +289,18 @@
     createClient(temp->getID());
 }
+
+  void Server::removePeer(ENetEvent *event)
+  {
+    COUT(4) << "removing client from list" << std::endl;
+    ClientInformation *client = ClientInformation::findClient(&event->peer->address);
+    if(!client)
+      return;
+    else
+    {
+      //ServerConnection::disconnectClient( client );
+      ClientConnectionListener::broadcastClientDisconnected( client->getID() );
+      delete client;
+    }
+  }
 
   bool Server::createClient(int clientID){
Index: code/branches/core5/src/libraries/network/Server.h
===================================================================
--- code/branches/core5/src/libraries/network/Server.h	(revision 5850)
+++ code/branches/core5/src/libraries/network/Server.h	(revision 5851)
@@ -65,5 +65,7 @@
     unsigned int playerID(){return 0;}
     
-    void addClient(ENetEvent *event);
+    void addPeer(ENetEvent *event);
+    void removePeer(ENetEvent *event);
+    
     bool createClient(int clientID);
     void disconnectClient( ClientInformation *client);
Index: code/branches/core5/src/libraries/network/ServerConnection.cc
===================================================================
--- code/branches/core5/src/libraries/network/ServerConnection.cc	(revision 5850)
+++ code/branches/core5/src/libraries/network/ServerConnection.cc	(revision 5851)
@@ -105,14 +105,4 @@
   }
   
-  void ServerConnection::disconnectPeer( ENetEvent* event )
-  {
-    COUT(4) << "removing client from list" << std::endl;
-    ClientInformation *client = ClientInformation::findClient(&event->peer->address);
-    if(!client)
-      return;
-    else
-      ServerConnection::disconnectClient( client );
-  }
-  
   void ServerConnection::disconnectClient(int clientID){
     ClientInformation *client = ClientInformation::findClient(clientID);
Index: code/branches/core5/src/libraries/network/ServerConnection.h
===================================================================
--- code/branches/core5/src/libraries/network/ServerConnection.h	(revision 5850)
+++ code/branches/core5/src/libraries/network/ServerConnection.h	(revision 5851)
@@ -59,5 +59,4 @@
     static bool addPacketAll(ENetPacket *packet);
     virtual void disconnectClient(ClientInformation *client);
-    virtual void disconnectPeer( ENetEvent* event );
     void disconnectClient(int clientID);
   protected:
