summaryrefslogtreecommitdiff
path: root/diffcore-rename.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2013-03-21 14:02:19 -0700
committerJunio C Hamano <gitster@pobox.com>2013-03-21 14:02:19 -0700
commitc241e285e53bc84def85682eeaa265c1cd99cceb (patch)
tree149c957fa2d297c1a2ddb07e5b459f855eb831d5 /diffcore-rename.c
parent09386fff3370c1833cc8c3ba8bbf70e460fecf17 (diff)
parentc73592812d36ccc7eccfd0489177970d246fa522 (diff)
Merge branch 'nd/preallocate-hash'
When we know approximately how many entries we will have in the hash-table, it makes sense to size the hash table to that number from the beginning to avoid unnecessary rehashing. * nd/preallocate-hash: Preallocate hash tables when the number of inserts are known in advance
Diffstat (limited to 'diffcore-rename.c')
-rw-r--r--diffcore-rename.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/diffcore-rename.c b/diffcore-rename.c
index 512d0ac5fd..6c7a72fbe7 100644
--- a/diffcore-rename.c
+++ b/diffcore-rename.c
@@ -389,6 +389,7 @@ static int find_exact_renames(struct diff_options *options)
struct hash_table file_table;
init_hash(&file_table);
+ preallocate_hash(&file_table, rename_src_nr + rename_dst_nr);
for (i = 0; i < rename_src_nr; i++)
insert_file_table(&file_table, -1, i, rename_src[i].p->one);