diff options
Diffstat (limited to 'src/server/client.zig')
| -rw-r--r-- | src/server/client.zig | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/server/client.zig b/src/server/client.zig index d6ccacf..458bbbb 100644 --- a/src/server/client.zig +++ b/src/server/client.zig @@ -40,10 +40,8 @@ pub const ClientState = struct { self: *ClientState, io: std.Io, ) void { - std.debug.print("out pointer in write proc: {*}\n", .{self.to_client}); - std.debug.print("recv queue in write proc: {*}\n", .{&self.recv_queue}); while (true) { - const message = self.recv_queue.getOne(io) catch continue; + const message = self.recv_queue.getOne(io) catch break; std.debug.print("got message in write loop to send to client: {any}\n", .{message}); switch (message) { .@"+ok" => { @@ -56,7 +54,12 @@ pub const ClientState = struct { writeInfo(self.to_client, info) catch break; }, .msg => |m| { - writeMsg(self.to_client, m) catch break; + if (writeMsg(self.to_client, m)) |_| { + @branchHint(.likely); + } else |_| { + @branchHint(.unlikely); + break; + } }, else => { std.debug.panic("unimplemented write", .{}); @@ -91,7 +94,7 @@ fn writeOk(out: *std.Io.Writer) !void { try out.flush(); } -pub fn writePong(out: *std.Io.Writer) !void { +fn writePong(out: *std.Io.Writer) !void { std.debug.print("out pointer: {*}\n", .{out}); std.debug.print("writing pong\n", .{}); _ = try out.write("PONG\r\n"); |
