From 4bf064056cf8938c90fe5ac8ac374a6e998fbc27 Mon Sep 17 00:00:00 2001 From: Robby Zambito Date: Fri, 2 Jan 2026 03:00:49 +0000 Subject: reorganize but crashing not sure why, seems like i'm using the right allocators everywhere? need to take another pass at this later. --- src/server/client.zig | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/server/client.zig') diff --git a/src/server/client.zig b/src/server/client.zig index af48fb5..5db6ff1 100644 --- a/src/server/client.zig +++ b/src/server/client.zig @@ -23,9 +23,20 @@ pub fn init( }; } -pub fn start(self: *Client, io: std.Io, alloc: std.mem.Allocator, queue: *std.Io.Queue(Message)) !void { +pub fn deinit(self: *Client, alloc: std.mem.Allocator) void { + if (self.connect) |c| { + c.deinit(alloc); + } + self.* = undefined; +} + +pub fn start(self: *Client, io: std.Io, alloc: std.mem.Allocator, queue: *std.Io.Queue(Message), server_info: Message.ServerInfo) !void { self.recv_queue = queue; var msgs: [8]Message = undefined; + + // Do initial handshake with client + try queue.putOne(io, .{ .info = server_info }); + while (true) { const len = try queue.get(io, &msgs, 1); std.debug.assert(len <= msgs.len); -- cgit