You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@etch.apache.org by ve...@apache.org on 2012/08/02 17:18:44 UTC

svn commit: r1368521 - in /incubator/etch/trunk/binding-cpp/runtime: lib/capu/modules/capu/include/capu/os/arch/Linux/ServerSocket.inc src/main/common/EtchServerSocket.cpp

Author: veithm
Date: Thu Aug  2 15:18:44 2012
New Revision: 1368521

URL: http://svn.apache.org/viewvc?rev=1368521&view=rev
Log:
ETCH-145 Small changes in socket implementation

Change-Id: Id3f4ecd3559dac79c1e78d32929bf5218f56146c

Modified:
    incubator/etch/trunk/binding-cpp/runtime/lib/capu/modules/capu/include/capu/os/arch/Linux/ServerSocket.inc
    incubator/etch/trunk/binding-cpp/runtime/src/main/common/EtchServerSocket.cpp

Modified: incubator/etch/trunk/binding-cpp/runtime/lib/capu/modules/capu/include/capu/os/arch/Linux/ServerSocket.inc
URL: http://svn.apache.org/viewvc/incubator/etch/trunk/binding-cpp/runtime/lib/capu/modules/capu/include/capu/os/arch/Linux/ServerSocket.inc?rev=1368521&r1=1368520&r2=1368521&view=diff
==============================================================================
--- incubator/etch/trunk/binding-cpp/runtime/lib/capu/modules/capu/include/capu/os/arch/Linux/ServerSocket.inc (original)
+++ incubator/etch/trunk/binding-cpp/runtime/lib/capu/modules/capu/include/capu/os/arch/Linux/ServerSocket.inc Thu Aug  2 15:18:44 2012
@@ -46,7 +46,11 @@ inline ServerSocket::~ServerSocket() {
 inline Socket* ServerSocket::accept() {
   int32_t clientAddrSize = sizeof (sockaddr_in);
   struct sockaddr_in serverAddr;
-  Socket *s = new Socket(::accept(mServerSock, (sockaddr *) &serverAddr, (socklen_t *) & clientAddrSize));
+  capu::int32_t socketHandle = ::accept(mServerSock, (sockaddr *) & serverAddr, (socklen_t *) & clientAddrSize);
+  if (socketHandle < 0) {
+    return NULL;
+  }
+  Socket *s = new Socket(socketHandle);
   s->mServerAddress = serverAddr;
   return s;
 }

Modified: incubator/etch/trunk/binding-cpp/runtime/src/main/common/EtchServerSocket.cpp
URL: http://svn.apache.org/viewvc/incubator/etch/trunk/binding-cpp/runtime/src/main/common/EtchServerSocket.cpp?rev=1368521&r1=1368520&r2=1368521&view=diff
==============================================================================
--- incubator/etch/trunk/binding-cpp/runtime/src/main/common/EtchServerSocket.cpp (original)
+++ incubator/etch/trunk/binding-cpp/runtime/src/main/common/EtchServerSocket.cpp Thu Aug  2 15:18:44 2012
@@ -43,6 +43,8 @@ status_t EtchServerSocket::close() {
 
 EtchSocket* EtchServerSocket::accept() {
   capu::Socket *capu_soc = mServerSocket.accept();
+  if(capu_soc == NULL)
+    return NULL;
   EtchSocket *sock = new EtchSocket(capu_soc);
   return sock;
 }