Bo Yang <struggleyb.nku@xxxxxxxxx> writes: > Since we need to support the syntax like: > -L n1,m1 path1 -L n2,m2 path2. > > So, make the parse-options API not stop with a The above sentence does not parse well. > non-option, but report the status and go on parsing > the following. > > Thanks-to: Jonathan Nieder <jrnieder@xxxxxxxxx> > Signed-off-by: Bo Yang <struggleyb.nku@xxxxxxxxx> > --- > parse-options.c | 3 ++- > parse-options.h | 3 ++- > 2 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/parse-options.c b/parse-options.c > index 0fa79bc..cbb49d3 100644 > --- a/parse-options.c > +++ b/parse-options.c > @@ -374,7 +374,7 @@ int parse_options_step(struct parse_opt_ctx_t *ctx, > if (parse_nodash_opt(ctx, arg, options) == 0) > continue; > if (ctx->flags & PARSE_OPT_STOP_AT_NON_OPTION) > - break; > + return PARSE_OPT_NON_OPTION; > ctx->out[ctx->cpidx++] = ctx->argv[0]; > continue; > } > @@ -456,6 +456,7 @@ int parse_options(int argc, const char **argv, const char *prefix, > switch (parse_options_step(&ctx, options, usagestr)) { > case PARSE_OPT_HELP: > exit(129); > + case PARSE_OPT_NON_OPTION: > case PARSE_OPT_DONE: > break; > default: /* PARSE_OPT_UNKNOWN */ > diff --git a/parse-options.h b/parse-options.h > index 7435cdb..407697a 100644 > --- a/parse-options.h > +++ b/parse-options.h > @@ -161,7 +161,8 @@ extern NORETURN void usage_msg_opt(const char *msg, > enum { > PARSE_OPT_HELP = -1, > PARSE_OPT_DONE, > - PARSE_OPT_UNKNOWN > + PARSE_OPT_NON_OPTION, > + PARSE_OPT_UNKNOWN, > }; > > /* > -- > 1.7.0.2.273.gc2413.dirty -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html