projects
/
git.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Small fixes in Documentation/git-mv.txt
[git.git]
/
diffcore-rename.c
diff --git
a/diffcore-rename.c
b/diffcore-rename.c
index
092cf68
..
dba965c
100644
(file)
--- a/
diffcore-rename.c
+++ b/
diffcore-rename.c
@@
-249,8
+249,11
@@
static int compute_stays(struct diff_queue_struct *q,
return 1;
}
return 1;
}
-void diffcore_rename(
int detect_rename, int minimum_score
)
+void diffcore_rename(
struct diff_options *options
)
{
{
+ int detect_rename = options->detect_rename;
+ int minimum_score = options->rename_score;
+ int rename_limit = options->rename_limit;
struct diff_queue_struct *q = &diff_queued_diff;
struct diff_queue_struct outq;
struct diff_score *mx;
struct diff_queue_struct *q = &diff_queued_diff;
struct diff_queue_struct outq;
struct diff_score *mx;
@@
-279,7
+282,8
@@
void diffcore_rename(int detect_rename, int minimum_score)
else if (detect_rename == DIFF_DETECT_COPY)
register_rename_src(p->one, 1);
}
else if (detect_rename == DIFF_DETECT_COPY)
register_rename_src(p->one, 1);
}
- if (rename_dst_nr == 0)
+ if (rename_dst_nr == 0 ||
+ (0 < rename_limit && rename_limit < rename_dst_nr))
goto cleanup; /* nothing to do */
/* We really want to cull the candidates list early
goto cleanup; /* nothing to do */
/* We really want to cull the candidates list early
@@
-303,6
+307,9
@@
void diffcore_rename(int detect_rename, int minimum_score)
if (rename_count == rename_dst_nr)
goto cleanup;
if (rename_count == rename_dst_nr)
goto cleanup;
+ if (minimum_score == MAX_SCORE)
+ goto cleanup;
+
num_create = (rename_dst_nr - rename_count);
num_src = rename_src_nr;
mx = xmalloc(sizeof(*mx) * num_create * num_src);
num_create = (rename_dst_nr - rename_count);
num_src = rename_src_nr;
mx = xmalloc(sizeof(*mx) * num_create * num_src);