diff options
Diffstat (limited to 'src/jq/compile.zig')
| -rw-r--r-- | src/jq/compile.zig | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/jq/compile.zig b/src/jq/compile.zig index fb2a691..78512b9 100644 --- a/src/jq/compile.zig +++ b/src/jq/compile.zig @@ -57,7 +57,12 @@ pub const Instr = union(Opcode) { pub fn deinit(self: Self, allocator: std.mem.Allocator) void { switch (self) { .object_key => |key| allocator.free(key), - .literal => |value| allocator.destroy(value), + .literal => |value| { + if (value.* == .string) { + allocator.free(value.string); + } + allocator.destroy(value); + }, else => {}, } } |
