diff options
Diffstat (limited to 'src/deps/c_ares.zig')
-rw-r--r-- | src/deps/c_ares.zig | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/deps/c_ares.zig b/src/deps/c_ares.zig index 4539358d0..7813ff5e4 100644 --- a/src/deps/c_ares.zig +++ b/src/deps/c_ares.zig @@ -488,7 +488,7 @@ pub const Channel = opaque { break :brk null; } const len = @min(host.len, host_buf.len - 1); - @memcpy(&host_buf, host.ptr, len); + @memcpy(host_buf[0..len], host[0..len]); host_buf[len] = 0; break :brk host_buf[0..len :0].ptr; }; @@ -515,8 +515,9 @@ pub const Channel = opaque { if (name.len == 0 or name.len >= 1023) { break :brk null; } - const len = @min(name_buf.len, name_buf.len - 1); - @memcpy(&name_buf, name.ptr, len); + const len = @min(name.len, name_buf.len - 1); + @memcpy(name_buf[0..len], name[0..len]); + name_buf[len] = 0; break :brk name_buf[0..len :0]; }; @@ -1209,8 +1210,8 @@ pub const Error = enum(i32) { ESERVICE = ARES_ESERVICE, pub fn initEAI(rc: i32) ?Error { - return switch (@intToEnum(std.os.system.EAI, rc)) { - @intToEnum(std.os.system.EAI, 0) => return null, + return switch (@enumFromInt(std.os.system.EAI, rc)) { + @enumFromInt(std.os.system.EAI, 0) => return null, .ADDRFAMILY => Error.EBADFAMILY, .BADFLAGS => Error.EBADFLAGS, // Invalid hints .FAIL => Error.EBADRESP, @@ -1283,8 +1284,8 @@ pub const Error = enum(i32) { pub fn get(rc: i32) ?Error { return switch (rc) { 0 => null, - 1...ARES_ESERVICE => @intToEnum(Error, rc), - -ARES_ESERVICE...-1 => @intToEnum(Error, -rc), + 1...ARES_ESERVICE => @enumFromInt(Error, rc), + -ARES_ESERVICE...-1 => @enumFromInt(Error, -rc), else => unreachable, }; } |