commit a4e506510b202685d859e366feeeb76e09252ba0 (tree)
parent e3452ba21b978f8b675e90e3b580e325ae0e38a6
Author: Matt Stancliff <matt@genges.com>
Date: Sun, 21 Apr 2019 11:14:18 -0400
Fix crash due to command line argument parsing
zig --help -> ok
zig --help --c-source -> ok
zig --c-source --help -> crash [fixed]
'i' was being incremented without regard for the 'argc' limit, so
we were running off the end of 'argv'.
Diffstat:
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/main.cpp b/src/main.cpp
@@ -755,7 +755,11 @@ int main(int argc, char **argv) {
if (argv[i][0] == '-') {
c_file->args.append(argv[i]);
i += 1;
- continue;
+ if (i < argc) {
+ continue;
+ }
+
+ break;
} else {
c_file->source_path = argv[i];
c_source_files.append(c_file);