summaryrefslogtreecommitdiff
path: root/src/server/main.zig
diff options
context:
space:
mode:
authorRobby Zambito <contact@robbyzambito.me>2026-01-02 14:11:00 +0000
committerRobby Zambito <contact@robbyzambito.me>2026-01-02 14:11:23 +0000
commit810e5f82113a0e3b24c4ad0b66afa045b86372df (patch)
tree7421027ce4e73b5bc017085b05f89d2c37eb342d /src/server/main.zig
parentaca265f09576645ef904a8a4e3cd2bb674ea11fb (diff)
Much better cleanup, still fast B)
Diffstat (limited to 'src/server/main.zig')
-rw-r--r--src/server/main.zig12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/server/main.zig b/src/server/main.zig
index aad842c..fca0dee 100644
--- a/src/server/main.zig
+++ b/src/server/main.zig
@@ -233,12 +233,12 @@ fn publishMessage(server: *Server, io: std.Io, alloc: std.mem.Allocator, source_
std.debug.print("trying to publish to a client that no longer exists: {d}\n", .{subscription.client_id});
continue;
};
- client.send(io, .{ .msg = .{
- .subject = try alloc.dupe(u8, msg.subject),
- .sid = try alloc.dupe(u8, subscription.sid),
- .reply_to = if (msg.reply_to) |r| try alloc.dupe(u8, r) else null,
- .payload = try alloc.dupe(u8, msg.payload),
- } }) catch continue;
+ client.send(io, .{
+ .msg = try msg.toMsg(alloc, subscription.sid),
+ }) catch |err| switch (err) {
+ error.Canceled => return err,
+ else => {},
+ };
}
}
if (source_client.connect) |c| {