From b28f208e659b5ef50258b0ea579f27529c81eff3 Mon Sep 17 00:00:00 2001 From: Luna Date: Sun, 4 Apr 2021 17:56:59 -0300 Subject: [PATCH] add error for non-lv2 args not getting enough args --- src/lang.zig | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/lang.zig b/src/lang.zig index 3747941..e70b553 100644 --- a/src/lang.zig +++ b/src/lang.zig @@ -527,9 +527,6 @@ pub const Lang = struct { else => true, }; - // TODO: crash when no arguments are left but we still need - // arguments... - if (is_lv2_command) { const split = tok_it.next(); if (split == null) { @@ -571,7 +568,14 @@ pub const Lang = struct { continue; } } - const arg = tok_it.next().?; + + const arg_opt = tok_it.next(); + if (arg_opt == null) { + self.doError("Expected parameter for {s}, got nothing", .{cmd_field.name}); + return; + } + const arg = arg_opt.?; + const argument_value = switch (cmd_field.field_type) { usize => try std.fmt.parseInt(usize, arg, 10), i32 => try std.fmt.parseInt(i32, arg, 10),