diff options
| author | Robby Zambito <contact@robbyzambito.me> | 2025-12-31 02:13:15 +0000 |
|---|---|---|
| committer | Robby Zambito <contact@robbyzambito.me> | 2026-01-01 05:22:02 +0000 |
| commit | 0f138e5984cbebe64bc398513597d62f4e879b05 (patch) | |
| tree | 96f071539363a31160ef154398ebb63a1b6a9662 /src/server/main.zig | |
| parent | e60a566a7c61cacc09213a23a708ab2f7d78a3ac (diff) | |
some cleanup and freeing
Diffstat (limited to 'src/server/main.zig')
| -rw-r--r-- | src/server/main.zig | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/src/server/main.zig b/src/server/main.zig index 0045c1c..f68e5d3 100644 --- a/src/server/main.zig +++ b/src/server/main.zig @@ -111,22 +111,35 @@ fn handleConnection( switch (msg) { .ping => { // Respond to ping with pong. - for (0..5) |_| { - if (try client_state.send(io, .pong)) { - break; - } - } else {} + try client_state.send(io, .pong); }, - .@"pub" => |@"pub"| { - try server.publishMessage(io, @"pub"); + .@"pub" => |pb| { + defer { + allocator.free(pb.payload); + allocator.free(pb.subject); + if (pb.reply_to) |r| { + allocator.free(r); + } + } + try server.publishMessage(io, pb); if (client_state.connect.connect.verbose) { - _ = try client_state.send(io, .@"+ok"); + try client_state.send(io, .@"+ok"); } }, .sub => |sub| { + defer { + allocator.free(sub.subject); + allocator.free(sub.sid); + if (sub.queue_group) |q| { + allocator.free(q); + } + } try server.subscribe(allocator, id, sub); }, .unsub => |unsub| { + defer { + allocator.free(unsub.sid); + } try server.unsubscribe(id, unsub); }, else => |e| { |
