From: Junio C Hamano Date: Fri, 20 Aug 2010 19:49:51 GMT Subject: Re: [PATCH v3 1/5] parse-options: Allow PARSE_OPT_NOARG in integer arguments Message-ID: <7vlj81awtc.fsf@alter.siamese.dyndns.org> In-Reply-To: <1282331702-5115-2-git-send-email-artagnon@gmail.com> Ramkumar Ramachandra writes: > When the option parser encounters an OPTION_INTEGER argument, > PARSE_OPT_NOARG should imply that the default value should be used. Sorry but why? Doesn't NOARG mean "Do not take an argument, if you give me an argument that is an error"? I would understand if this were OPT_OPTARG, though. Confused... > > Signed-off-by: Ramkumar Ramachandra > Cc: Jakub Narebski > --- > parse-options.c | 3 +++ > 1 files changed, 3 insertions(+), 0 deletions(-) > > diff --git a/parse-options.c b/parse-options.c > index e0c3641..7ec9886 100644 > --- a/parse-options.c > +++ b/parse-options.c > @@ -138,6 +138,9 @@ static int get_value(struct parse_opt_ctx_t *p, > *(int *)opt->value = 0; > return 0; > } > + if (opt->flags & PARSE_OPT_NOARG) > + *(int *)opt->value = opt->defval; > + return 0; > if (opt->flags & PARSE_OPT_OPTARG && !p->opt) { > *(int *)opt->value = opt->defval; > return 0; > -- > 1.7.2.2.409.gdbb11.dirty