| ... | ... | @@ -1119,7 +1119,13 @@ pub const Socket = struct { |
| 1119 | 1119 | /// * `receiveTimeout` |
| 1120 | 1120 | pub fn receive(s: *const Socket, io: Io, buffer: []u8) ReceiveError!IncomingMessage { |
| 1121 | 1121 | var message: IncomingMessage = undefined; |
| 1122 | | assert(1 == try io.vtable.netReceive(io.userdata, s.handle, (&message)[0..1], buffer, .{}, .none)); |
| 1122 | const maybe_err, const count = io.vtable.netReceive(io.userdata, s.handle, (&message)[0..1], buffer, .{}, .none); |
| 1123 | if (maybe_err) |err| switch (err) { |
| 1124 | // No timeout is passed to `netReceieve`, so it must not return timeout related errors. |
| 1125 | error.Timeout, error.UnsupportedClock => unreachable, |
| 1126 | else => |e| return e, |
| 1127 | }; |
| 1128 | assert(1 == count); |
| 1123 | 1129 | return message; |
| 1124 | 1130 | } |
| 1125 | 1131 | |
| ... | ... | @@ -1139,7 +1145,9 @@ pub const Socket = struct { |
| 1139 | 1145 | timeout: Io.Timeout, |
| 1140 | 1146 | ) ReceiveTimeoutError!IncomingMessage { |
| 1141 | 1147 | var message: IncomingMessage = undefined; |
| 1142 | | assert(1 == try io.vtable.netReceive(io.userdata, s.handle, (&message)[0..1], buffer, .{}, timeout)); |
| 1148 | const maybe_err, const count = io.vtable.netReceive(io.userdata, s.handle, (&message)[0..1], buffer, .{}, timeout); |
| 1149 | if (maybe_err) |err| return err; |
| 1150 | assert(1 == count); |
| 1143 | 1151 | return message; |
| 1144 | 1152 | } |
| 1145 | 1153 | |