aboutsummaryrefslogtreecommitdiff
path: root/config.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2017-07-13 16:14:54 -0700
committerJunio C Hamano <gitster@pobox.com>2017-07-13 16:14:54 -0700
commit91f69225443b3be8d3f11c5c71795169d7d00737 (patch)
tree7c891653d8fb17dfb29641cc8e56385064816e94 /config.c
parenteac97b438c6734304c155604f4c36ac63f29ca6f (diff)
parent1ecbf31d0298a1ed952623108e23234d5cf37086 (diff)
downloadgit-91f69225443b3be8d3f11c5c71795169d7d00737.tar.gz
git-91f69225443b3be8d3f11c5c71795169d7d00737.tar.xz
Merge branch 'sb/hashmap-customize-comparison'
Update the hashmap API so that data to customize the behaviour of the comparison function can be specified at the time a hashmap is initialized. * sb/hashmap-customize-comparison: hashmap: migrate documentation from Documentation/technical into header patch-ids.c: use hashmap correctly hashmap.h: compare function has access to a data field
Diffstat (limited to 'config.c')
-rw-r--r--config.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/config.c b/config.c
index a9356c138..231f9a750 100644
--- a/config.c
+++ b/config.c
@@ -1714,15 +1714,18 @@ static int configset_add_value(struct config_set *cs, const char *key, const cha
return 0;
}
-static int config_set_element_cmp(const struct config_set_element *e1,
- const struct config_set_element *e2, const void *unused)
+static int config_set_element_cmp(const void *unused_cmp_data,
+ const struct config_set_element *e1,
+ const struct config_set_element *e2,
+ const void *unused_keydata)
{
return strcmp(e1->key, e2->key);
}
void git_configset_init(struct config_set *cs)
{
- hashmap_init(&cs->config_hash, (hashmap_cmp_fn)config_set_element_cmp, 0);
+ hashmap_init(&cs->config_hash, (hashmap_cmp_fn)config_set_element_cmp,
+ NULL, 0);
cs->hash_initialized = 1;
cs->list.nr = 0;
cs->list.alloc = 0;