authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2025-10-16 16:02:35-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2025-10-29 06:20:50-07:00
logf14c4c3db88b6194205369312d0e616c793c5e47
tree3c1a88eb976a9a0a71f89e4adece20d0513a8e45
parent6336d586614a547a550d6d7055b364ca53775a60

std.Io.net.HostName: fix connectMany not running DNS async


1 files changed, 7 insertions(+), 7 deletions(-)

lib/std/Io/net/HostName.zig+7-7
......@@ -268,20 +268,20 @@ pub fn connectMany(
268268 var canonical_name_buffer: [max_len]u8 = undefined;
269269 var lookup_buffer: [32]HostName.LookupResult = undefined;
270270 var lookup_queue: Io.Queue(LookupResult) = .init(&lookup_buffer);
271 var group: Io.Group = .init;
271272
272 host_name.lookup(io, &lookup_queue, .{
273 group.async(io, lookup, .{ host_name, io, &lookup_queue, .{
273274 .port = port,
274275 .canonical_name_buffer = &canonical_name_buffer,
275 });
276
277 var group: Io.Group = .init;
276 } });
278277
279278 while (lookup_queue.getOne(io)) |dns_result| switch (dns_result) {
280279 .address => |address| group.async(io, enqueueConnection, .{ address, io, results, options }),
281280 .canonical_name => continue,
282281 .end => |lookup_result| {
283 group.waitUncancelable(io);
284 results.putOneUncancelable(io, .{ .end = lookup_result });
282 results.putOneUncancelable(io, .{
283 .end = if (group.wait(io)) lookup_result else |err| err,
284 });
285285 return;
286286 },
287287 } else |err| switch (err) {
......@@ -409,7 +409,7 @@ test ResolvConf {
409409 \\# Generated by resolvconf
410410 \\nameserver 1.0.0.1
411411 \\nameserver 1.1.1.1
412 \\nameserver fe80::e0e:76ff:fed4:cf22%eno1
412 \\nameserver fe80::e0e:76ff:fed4:cf22
413413 \\options edns0
414414 \\
415415 ;