From e50d53ee7ee044df88fa0b31a998ef17eb7e7efa Mon Sep 17 00:00:00 2001 From: Robby Zambito Date: Mon, 5 Jan 2026 00:23:43 -0500 Subject: Add Payload type stores short message buffers in a colocated array, overflowing to an allocated slice when needed. --- src/server/Client.zig | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/server/Client.zig') diff --git a/src/server/Client.zig b/src/server/Client.zig index 8ff92e8..4eceb89 100644 --- a/src/server/Client.zig +++ b/src/server/Client.zig @@ -72,25 +72,27 @@ pub fn start(self: *Client, io: std.Io, alloc: std.mem.Allocator) !void { switch (msg) { .MSG => |m| { try self.to_client.print( - "MSG {s} {s} {s} {d}\r\n{s}\r\n", + "MSG {s} {s} {s} {d}\r\n", .{ m.subject, m.sid, m.reply_to orelse "", m.payload.len, - m.payload, }, ); + try m.payload.write(self.to_client); + try self.to_client.print("\r\n", .{}); }, .HMSG => |hmsg| { - try self.to_client.print("HMSG {s} {s} {s} {d} {d}\r\n{s}\r\n", .{ + try self.to_client.print("HMSG {s} {s} {s} {d} {d}\r\n", .{ hmsg.msg.subject, hmsg.msg.sid, hmsg.msg.reply_to orelse "", hmsg.header_bytes, hmsg.msg.payload.len, - hmsg.msg.payload, }); + try hmsg.msg.payload.write(self.to_client); + try self.to_client.print("\r\n", .{}); }, } } -- cgit