From e5991abe134ec5195bdfc79dcce3f814df389e32 Mon Sep 17 00:00:00 2001 From: RadsammyT Date: Fri, 27 Feb 2026 17:10:06 -0500 Subject: [PATCH] do memory freeing for CustomCommands --- src/main.zig | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/main.zig b/src/main.zig index 0e06d1f..af2c11a 100644 --- a/src/main.zig +++ b/src/main.zig @@ -217,7 +217,18 @@ pub fn main() !void { CustomCommands.mapping = .init(state.allocator); var config_parser = try IniParser(Config).init(state.allocator, config_path, migrator.configFieldHandler); defer config_parser.deinit(); - defer CustomCommands.mapping.deinit(); + // mapping.deinit() has to be done here + defer { + if (!shutdown or !restart) { + var iter = CustomCommands.mapping.iterator(); + while (iter.next()) |i| { + temporary_allocator.free(i.key_ptr.*); + temporary_allocator.free(i.value_ptr.*.cmd); + temporary_allocator.free(i.value_ptr.*.name); + } + CustomCommands.mapping.deinit(); + } + } state.config = config_parser.structure;