diff --git a/MAC/APL/PIC/RSPDriver/src/RSPDriver.cc b/MAC/APL/PIC/RSPDriver/src/RSPDriver.cc
index ba6f79fa81feb889cca77623e20b9b7ecad0ecbc..49d26b47e1c439e4f8dc5c81075bebafceb9bea8 100644
--- a/MAC/APL/PIC/RSPDriver/src/RSPDriver.cc
+++ b/MAC/APL/PIC/RSPDriver/src/RSPDriver.cc
@@ -886,10 +886,11 @@ GCFEvent::TResult RSPDriver::enabled(GCFEvent& event, GCFPortInterface& port)
     {
       GCFTCPPort* client = new GCFTCPPort();
       client->init(*this, "client", GCFPortInterface::SPP, RSP_PROTOCOL);
-      m_acceptor.accept(*client);
-      m_client_list.push_back(client);
-
-      LOG_INFO(formatString("NEW CLIENT CONNECTED: %d clients connected", m_client_list.size()));
+      if (!m_acceptor.accept(*client)) delete client;
+      else {
+	m_client_list.push_back(client);
+	LOG_INFO(formatString("NEW CLIENT CONNECTED: %d clients connected", m_client_list.size()));
+      }
     }
     break;