summaryrefslogtreecommitdiff
path: root/src/server/main.zig
diff options
context:
space:
mode:
authorRobby Zambito <contact@robbyzambito.me>2025-12-09 18:22:41 -0500
committerRobby Zambito <contact@robbyzambito.me>2025-12-09 18:22:41 -0500
commit45e8c4cc0824138b0433f789b4a0a21e77385aef (patch)
tree972b0a780f340f8316ac0d3a1479ac42d2eecb2a /src/server/main.zig
parent30cc0170813500f73f897d846052cb1aeaa58d52 (diff)
sending errors on pub sub!
Diffstat (limited to 'src/server/main.zig')
-rw-r--r--src/server/main.zig10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/server/main.zig b/src/server/main.zig
index a732525..2ebf96d 100644
--- a/src/server/main.zig
+++ b/src/server/main.zig
@@ -63,6 +63,8 @@ fn handleConnection(
var writer = stream.writer(io, &w_buffer);
const out = &writer.interface;
+ std.debug.print("out pointer in client handler: {*}\n", .{out});
+
var r_buffer: [8192]u8 = undefined;
var reader = stream.reader(io, &r_buffer);
const in = &reader.interface;
@@ -71,8 +73,8 @@ fn handleConnection(
var connect_arena: std.heap.ArenaAllocator = .init(allocator);
defer connect_arena.deinit();
const connect = (Message.next(connect_arena.allocator(), in) catch return).connect;
- var client_state: ClientState = try .init(io, id, connect, in, out);
- defer client_state.deinit(io);
+ var client_state: ClientState = try .init(io, allocator, id, connect, in, out);
+ defer client_state.deinit(io, allocator);
try server.addClient(allocator, id, &client_state);
defer server.removeClient(allocator, id);
@@ -107,7 +109,9 @@ fn handleConnection(
switch (msg) {
.ping => {
std.debug.print("got a ping! sending a pong.\n", .{});
- @import("./client.zig").writePong(out) catch return;
+
+ std.debug.print("recv queue in server loop: {*}\n", .{&client_state.recv_queue});
+ // @import("./client.zig").writePong(out) catch return;
for (0..5) |_| {
if (try client_state.send(io, .pong)) {
std.debug.print("sent pong\n", .{});