diff --git a/src/lang.zig b/src/lang.zig index 02dbf3b..8063329 100644 --- a/src/lang.zig +++ b/src/lang.zig @@ -45,13 +45,14 @@ pub const Command = struct { } pub fn argAt(self: Command, idx: usize) ![]const u8 { - const args = self.args.toSliceConst(); + std.debug.warn("{} {}", idx, self.args.len); - if (idx > (args.len - 1)) { + if (idx > (self.args.len - 1)) { std.debug.warn("Expected argument at index {}\n", idx); return ParseError.ArgRequired; } + const args = self.args.toSliceConst(); return args[idx]; } @@ -361,6 +362,8 @@ pub const Lang = struct { } var args = ArgList.init(self.allocator); + errdefer args.deinit(); + while (tok_it.next()) |arg| { try args.append(arg); }