Mercurial > projects > ldc
changeset 1197:1546b5162152
Make sure -run doesn't consume the config file flags.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Sun, 05 Apr 2009 15:58:28 +0200 |
parents | 6c31351af0c5 |
children | f48500f9350c |
files | gen/main.cpp |
diffstat | 1 files changed, 8 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/gen/main.cpp Sun Apr 05 15:02:44 2009 +0200 +++ b/gen/main.cpp Sun Apr 05 15:58:28 2009 +0200 @@ -163,8 +163,11 @@ std::vector<const char*> 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 @@ // 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) {