]> git.ipfire.org Git - thirdparty/git.git/commit
config: require at least one digit when parsing numbers
authorPhillip Wood <phillip.wood@dunelm.org.uk>
Wed, 9 Nov 2022 14:16:27 +0000 (14:16 +0000)
committerTaylor Blau <me@ttaylorr.com>
Thu, 10 Nov 2022 02:30:39 +0000 (21:30 -0500)
commit7595c0ece1d45ca540f26cecf485285f5ce8186f
treee91b323a5b5e2f12b7ff97ed8b71782897c9dde4
parent84356ff7709bd45c7e61632f1b837a7144a5178f
config: require at least one digit when parsing numbers

If the input to strtoimax() or strtoumax() does not contain any digits
then they return zero and set `end` to point to the start of the input
string.  git_parse_[un]signed() do not check `end` and so fail to return
an error and instead return a value of zero if the input string is a
valid units factor without any digits (e.g "k").

Tests are added to check that 'git config --int' and OPT_MAGNITUDE()
reject a units specifier without a leading digit.

Helped-by: Jeff King <peff@peff.net>
Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk>
Signed-off-by: Taylor Blau <me@ttaylorr.com>
config.c
t/t0040-parse-options.sh
t/t1300-config.sh