diff options
author | Junio C Hamano <gitster@pobox.com> | 2017-07-13 16:14:54 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-07-13 16:14:54 -0700 |
commit | 91f69225443b3be8d3f11c5c71795169d7d00737 (patch) | |
tree | 7c891653d8fb17dfb29641cc8e56385064816e94 /patch-ids.c | |
parent | eac97b438c6734304c155604f4c36ac63f29ca6f (diff) | |
parent | 1ecbf31d0298a1ed952623108e23234d5cf37086 (diff) | |
download | git-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 'patch-ids.c')
-rw-r--r-- | patch-ids.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/patch-ids.c b/patch-ids.c index 9c0ab9e67..b4166b0f3 100644 --- a/patch-ids.c +++ b/patch-ids.c @@ -35,9 +35,10 @@ int commit_patch_id(struct commit *commit, struct diff_options *options, * the side of safety. The actual value being negative does not have * any significance; only that it is non-zero matters. */ -static int patch_id_cmp(struct patch_id *a, +static int patch_id_cmp(struct diff_options *opt, + struct patch_id *a, struct patch_id *b, - struct diff_options *opt) + const void *unused_keydata) { if (is_null_oid(&a->patch_id) && commit_patch_id(a->commit, opt, &a->patch_id, 0)) @@ -57,7 +58,8 @@ int init_patch_ids(struct patch_ids *ids) ids->diffopts.detect_rename = 0; DIFF_OPT_SET(&ids->diffopts, RECURSIVE); diff_setup_done(&ids->diffopts); - hashmap_init(&ids->patches, (hashmap_cmp_fn)patch_id_cmp, 256); + hashmap_init(&ids->patches, (hashmap_cmp_fn)patch_id_cmp, + &ids->diffopts, 256); return 0; } @@ -93,7 +95,7 @@ struct patch_id *has_commit_patch_id(struct commit *commit, if (init_patch_id_entry(&patch, commit, ids)) return NULL; - return hashmap_get(&ids->patches, &patch, &ids->diffopts); + return hashmap_get(&ids->patches, &patch, NULL); } struct patch_id *add_commit_patch_id(struct commit *commit, |