浏览代码

Fix leaked handle in create_socket (#1554)

Fixes resource leak problem detected by Coverity Scan.
Oleg Shparber 3 年之前
父节点
当前提交
c2e156e0e0
共有 1 个文件被更改,包括 4 次插入1 次删除
  1. 4 1
      httplib.h

+ 4 - 1
httplib.h

@@ -2728,7 +2728,10 @@ socket_t create_socket(const std::string &host, const std::string &ip, int port,
     if (sock == INVALID_SOCKET) { continue; }
 
 #ifndef _WIN32
-    if (fcntl(sock, F_SETFD, FD_CLOEXEC) == -1) { continue; }
+    if (fcntl(sock, F_SETFD, FD_CLOEXEC) == -1) {
+      close_socket(sock);
+      continue;
+    }
 #endif
 
     if (tcp_nodelay) {