From ba200214d4f5af98e2d8c241014c8ecc32b3fda7 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Sun, 5 Apr 2009 15:58:28 +0200 Subject: [PATCH] Make sure -run doesn't consume the config file flags. --- gen/main.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gen/main.cpp b/gen/main.cpp index 7d7bca30..0c0971cb 100644 --- a/gen/main.cpp +++ b/gen/main.cpp @@ -163,8 +163,11 @@ int main(int argc, char** argv) std::vector final_args; final_args.reserve(argc); - // insert argc + DFLAGS - final_args.insert(final_args.end(), &argv[0], &argv[argc]); + // insert command line args until -run is reached + int run_argnum = 1; + while (run_argnum < argc && strncmp(argv[run_argnum], "-run", 4) != 0) + ++run_argnum; + final_args.insert(final_args.end(), &argv[0], &argv[run_argnum]); // read the configuration file ConfigFile cfg_file; @@ -181,6 +184,9 @@ int main(int argc, char** argv) // insert config file additions to the argument list final_args.insert(final_args.end(), cfg_file.switches_begin(), cfg_file.switches_end()); + // insert -run and everything beyond + final_args.insert(final_args.end(), &argv[run_argnum], &argv[argc]); + #if 0 for (size_t i = 0; i < final_args.size(); ++i) {