summaryrefslogtreecommitdiff
path: root/diffcore-rename.c
diff options
context:
space:
mode:
authorElijah Newren <newren@gmail.com>2021-06-08 16:11:40 (GMT)
committerJunio C Hamano <gitster@pobox.com>2021-06-09 02:40:04 (GMT)
commit61bf4490afffb946787edec63b932551b3089d27 (patch)
tree7ad442158e55ae4e401816018de6375982524ed4 /diffcore-rename.c
parent5a3743da326b2e041c65ac12ba0d04a1fed45b58 (diff)
downloadgit-61bf4490afffb946787edec63b932551b3089d27.zip
git-61bf4490afffb946787edec63b932551b3089d27.tar.gz
git-61bf4490afffb946787edec63b932551b3089d27.tar.bz2
diffcore-rename: avoid unnecessary strdup'ing in break_idx
The keys of break_idx are strings from the diff_filepairs of diff_queued_diff. break_idx is only used in location_rename_dst(), and that usage is always before any free'ing of the pairs (and thus the strings in the pairs). As such, there is no need to strdup these keys; we can just reuse the existing strings as-is. The merge logic doesn't make use of break detection, so this does not affect the performance of any of my testcases. It was just a minor unrelated optimization noted in passing while looking at the code. Signed-off-by: Elijah Newren <newren@gmail.com> Reviewed-by: Derrick Stolee <dstolee@microsoft.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'diffcore-rename.c')
-rw-r--r--diffcore-rename.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/diffcore-rename.c b/diffcore-rename.c
index dfbe65c..9c0bc5a 100644
--- a/diffcore-rename.c
+++ b/diffcore-rename.c
@@ -54,7 +54,7 @@ static void register_rename_src(struct diff_filepair *p)
if (p->broken_pair) {
if (!break_idx) {
break_idx = xmalloc(sizeof(*break_idx));
- strintmap_init(break_idx, -1);
+ strintmap_init_with_options(break_idx, -1, NULL, 0);
}
strintmap_set(break_idx, p->one->path, rename_dst_nr);
}