Code

parse-options: sanity check PARSE_OPT_NOARG flag
authorJonathan Nieder <jrnieder@gmail.com>
Thu, 2 Dec 2010 06:08:57 +0000 (00:08 -0600)
committerJunio C Hamano <gitster@pobox.com>
Tue, 7 Dec 2010 22:19:10 +0000 (14:19 -0800)
commit5c400ed2e05070d79b6cd9438ff5607ec0a83589
tree982df752c16b4eb892154585fd403d5530e99c05
parenta02dd4ff7dd79eb6aa39b00c90c293e3c3d10b4c
parse-options: sanity check PARSE_OPT_NOARG flag

Some option types cannot use an argument --- boolean options that
would set a bit or flag or increment a counter, for example.  If
configured in the flag word to accept an argument anyway, the result
is an argument that is advertised in "program -h" output only to be
rejected by parse-options::get_value.

Luckily all current users of these option types use PARSE_OPT_NOARG
and do not use PARSE_OPT_OPTARG.  Add a check to ensure that that
remains true.  The check is run once for each invocation of
parse_option_start().

Improved-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
parse-options.c