| ... | @@ -268,20 +268,20 @@ pub fn connectMany( | ... | @@ -268,20 +268,20 @@ pub fn connectMany( |
| 268 | var canonical_name_buffer: [max_len]u8 = undefined; | 268 | var canonical_name_buffer: [max_len]u8 = undefined; |
| 269 | var lookup_buffer: [32]HostName.LookupResult = undefined; | 269 | var lookup_buffer: [32]HostName.LookupResult = undefined; |
| 270 | var lookup_queue: Io.Queue(LookupResult) = .init(&lookup_buffer); | 270 | var lookup_queue: Io.Queue(LookupResult) = .init(&lookup_buffer); |
| | 271 | var group: Io.Group = .init; |
| 271 | | 272 | |
| 272 | host_name.lookup(io, &lookup_queue, .{ | 273 | group.async(io, lookup, .{ host_name, io, &lookup_queue, .{ |
| 273 | .port = port, | 274 | .port = port, |
| 274 | .canonical_name_buffer = &canonical_name_buffer, | 275 | .canonical_name_buffer = &canonical_name_buffer, |
| 275 | }); | 276 | } }); |
| 276 | | | |
| 277 | var group: Io.Group = .init; | | |
| 278 | | 277 | |
| 279 | while (lookup_queue.getOne(io)) |dns_result| switch (dns_result) { | 278 | while (lookup_queue.getOne(io)) |dns_result| switch (dns_result) { |
| 280 | .address => |address| group.async(io, enqueueConnection, .{ address, io, results, options }), | 279 | .address => |address| group.async(io, enqueueConnection, .{ address, io, results, options }), |
| 281 | .canonical_name => continue, | 280 | .canonical_name => continue, |
| 282 | .end => |lookup_result| { | 281 | .end => |lookup_result| { |
| 283 | group.waitUncancelable(io); | 282 | results.putOneUncancelable(io, .{ |
| 284 | results.putOneUncancelable(io, .{ .end = lookup_result }); | 283 | .end = if (group.wait(io)) lookup_result else |err| err, |
| | 284 | }); |
| 285 | return; | 285 | return; |
| 286 | }, | 286 | }, |
| 287 | } else |err| switch (err) { | 287 | } else |err| switch (err) { |
| ... | @@ -409,7 +409,7 @@ test ResolvConf { | ... | @@ -409,7 +409,7 @@ test ResolvConf { |
| 409 | \\# Generated by resolvconf | 409 | \\# Generated by resolvconf |
| 410 | \\nameserver 1.0.0.1 | 410 | \\nameserver 1.0.0.1 |
| 411 | \\nameserver 1.1.1.1 | 411 | \\nameserver 1.1.1.1 |
| 412 | \\nameserver fe80::e0e:76ff:fed4:cf22%eno1 | 412 | \\nameserver fe80::e0e:76ff:fed4:cf22 |
| 413 | \\options edns0 | 413 | \\options edns0 |
| 414 | \\ | 414 | \\ |
| 415 | ; | 415 | ; |