parseopt: prevent KEEP_UNKNOWN and STOP_AT_NON_OPTION from being used together
authorRené Scharfe <rene.scharfe@lsrfire.ath.cx>
Mon, 9 Mar 2009 20:57:38 +0000 (21:57 +0100)
committerJunio C Hamano <gitster@pobox.com>
Mon, 9 Mar 2009 22:32:50 +0000 (15:32 -0700)
commit0d260f9a09a2febeb86fdada7224d271a76d2e3c
treefc941df4ea65bc64faf78bfe93a877554a72dccd
parent9ad7e6ea24739c298d0a9660121de6df0502915a
parseopt: prevent KEEP_UNKNOWN and STOP_AT_NON_OPTION from being used together

As suggested by Junio, disallow the flags PARSE_OPT_KEEP_UNKNOWN and
PARSE_OPT_STOP_AT_NON_OPTION to be turned on at the same time, as a
value of an unknown option could be mistakenly classified as a
non-option, stopping the parser early.  E.g.:

git cmd --known --unknown value arg0 arg1

The parser should have stopped at "arg0", but it already stops at
"value".

This patch makes parse_options() die if the two flags are used in
combination.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/technical/api-parse-options.txt
parse-options.c