From f749bf094249bc6b48e3359dd99715ae7fec176e Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 2 Nov 2019 15:15:56 -0400 Subject: [PATCH] std.os: fix sendto, poll, recvfrom when linking libc Thank you to Brendan Hansknecht for this patch. --- lib/std/os.zig | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/std/os.zig b/lib/std/os.zig index 988ab873d8..58f74563e1 100644 --- a/lib/std/os.zig +++ b/lib/std/os.zig @@ -2997,7 +2997,7 @@ pub fn sendto( while (true) { const rc = system.sendto(sockfd, buf.ptr, buf.len, flags, dest_addr, addrlen); switch (errno(rc)) { - 0 => return rc, + 0 => return @intCast(usize, rc), EACCES => return error.AccessDenied, EAGAIN => if (std.event.Loop.instance) |loop| { @@ -3063,7 +3063,7 @@ pub fn poll(fds: []pollfd, timeout: i32) PollError!usize { while (true) { const rc = system.poll(fds.ptr, fds.len, timeout); switch (errno(rc)) { - 0 => return rc, + 0 => return @intCast(usize, rc), EFAULT => unreachable, EINTR => continue, EINVAL => unreachable, @@ -3096,7 +3096,7 @@ pub fn recvfrom( while (true) { const rc = system.recvfrom(sockfd, buf.ptr, buf.len, flags, src_addr, addrlen); switch (errno(rc)) { - 0 => return rc, + 0 => return @intCast(usize, rc), EBADF => unreachable, // always a race condition EFAULT => unreachable, EINVAL => unreachable,