diff options
| author | Laytan Laats <laytanlaats@hotmail.com> | 2024-10-08 21:01:57 +0200 |
|---|---|---|
| committer | Laytan Laats <laytanlaats@hotmail.com> | 2024-10-08 21:01:57 +0200 |
| commit | d8af35f01e71ba1c711cd6d6c5fe0a43116c29f0 (patch) | |
| tree | fe2cfa069697063d9beed65b472c3edc16d3c55b /core/net/socket_freebsd.odin | |
| parent | b839d06ac84f193252d5f3e5e76c432f623211bd (diff) | |
net: fix leaking sockets in dial_tcp if connect errors
Diffstat (limited to 'core/net/socket_freebsd.odin')
| -rw-r--r-- | core/net/socket_freebsd.odin | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/core/net/socket_freebsd.odin b/core/net/socket_freebsd.odin index 0f3a85cbb..2c193b0d8 100644 --- a/core/net/socket_freebsd.odin +++ b/core/net/socket_freebsd.odin @@ -114,8 +114,8 @@ _dial_tcp_from_endpoint :: proc(endpoint: Endpoint, options := default_tcp_optio sockaddr := _endpoint_to_sockaddr(endpoint) errno := freebsd.connect(cast(Fd)socket, &sockaddr, cast(freebsd.socklen_t)sockaddr.len) if errno != nil { - err = cast(Dial_Error)errno - return + close(socket) + return {}, cast(Dial_Error)errno } return |