sensord: close socket fd if accept() is failed 52/54952/1
authorkibak.yoon <kibak.yoon@samsung.com>
Mon, 21 Dec 2015 03:01:55 +0000 (12:01 +0900)
committerkibak.yoon <kibak.yoon@samsung.com>
Mon, 21 Dec 2015 03:05:58 +0000 (12:05 +0900)
Change-Id: I93093632a3f9bcbcbcf4007564bb6c7d9512bd7a
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
src/shared/csocket.cpp

index 9d80138..5fbb2c1 100644 (file)
@@ -154,8 +154,10 @@ bool csocket::accept(csocket& client_socket) const
 
        do {
                client_socket.m_sock_fd = ::accept(m_sock_fd, (sockaddr *)&m_addr, (socklen_t *)&addr_length);
-               if (!client_socket.is_valid())
+               if (!client_socket.is_valid()) {
                        err = errno;
+                       ::close(client_socket.m_sock_fd);
+               }
        } while (err == EINTR);
 
        if (!client_socket.is_valid()) {