diff options
author | Libor Pechacek <lpechacek@suse.cz> | 2011-01-30 20:40:41 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-02-22 15:19:45 -0800 |
commit | b09c53a3e331211fc0154de8ebb271e48f8c7ee5 (patch) | |
tree | 341eeb6f6252abd6bf0d5415efe2afcffc3d4c52 /cache.h | |
parent | 597a63054241c122515c93cbce45bc44eb231f18 (diff) | |
download | git-b09c53a3e331211fc0154de8ebb271e48f8c7ee5.tar.gz git-b09c53a3e331211fc0154de8ebb271e48f8c7ee5.tar.xz |
Sanity-check config variable names
Sanity-check config variable names when adding and retrieving them. As a side
effect code duplication between git_config_set_multivar and get_value (in
builtin/config.c) was removed and the common functionality was placed in
git_config_parse_key.
This breaks a test in t1300 which used invalid section-less keys in the tests
for "git -c". However, allowing such names there was useless, since there was
no way to set them via config file, and no part of git actually tried to use
section-less keys. This patch updates the test to use more realistic examples
as well as adding its own test.
Signed-off-by: Libor Pechacek <lpechacek@suse.cz>
Acked-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'cache.h')
-rw-r--r-- | cache.h | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -997,6 +997,7 @@ extern int git_config_maybe_bool(const char *, const char *); extern int git_config_string(const char **, const char *, const char *); extern int git_config_pathname(const char **, const char *, const char *); extern int git_config_set(const char *, const char *); +extern int git_config_parse_key(const char *, char **, int *); extern int git_config_set_multivar(const char *, const char *, const char *, int); extern int git_config_rename_section(const char *, const char *); extern const char *git_etc_gitconfig(void); |