net: fix leaking sockets in dial_tcp if connect errors

This commit is contained in:
Laytan Laats
2024-10-08 21:01:57 +02:00
parent b839d06ac8
commit d8af35f01e
4 changed files with 8 additions and 7 deletions
+2 -1
View File
@@ -147,7 +147,8 @@ _dial_tcp_from_endpoint :: proc(endpoint: Endpoint, options := default_tcp_optio
addr := _unwrap_os_addr(endpoint)
errno = linux.connect(linux.Fd(os_sock), &addr)
if errno != .NONE {
return cast(TCP_Socket) os_sock, Dial_Error(errno)
close(cast(TCP_Socket) os_sock)
return {}, Dial_Error(errno)
}
// NOTE(tetra): Not vital to succeed; error ignored
no_delay: b32 = cast(b32) options.no_delay