Signed-off-by: Jeff King <peff@xxxxxxxx> --- This was another patch from late in the freeze period. It was in response to a user getting confused about why rename detection wasn't happening in a large merge. Is it appropriate to print this for every rename we try? Or should it just be for merges? Perhaps we should also bump the default limit from 100, which I think was just arbitrarily chosen. I posted some numbers in: http://mid.gmane.org/20080211113516.GB6344@xxxxxxxxxxxxxxxxxxxxxxx which imply that 200-400 is probably a more reasonable value. Thoughts? diffcore-rename.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/diffcore-rename.c b/diffcore-rename.c index 3d37725..31941bc 100644 --- a/diffcore-rename.c +++ b/diffcore-rename.c @@ -468,10 +468,11 @@ void diffcore_rename(struct diff_options *options) */ if (rename_limit <= 0 || rename_limit > 32767) rename_limit = 32767; - if (num_create > rename_limit && num_src > rename_limit) - goto cleanup; - if (num_create * num_src > rename_limit * rename_limit) + if ((num_create > rename_limit && num_src > rename_limit) || + (num_create * num_src > rename_limit * rename_limit)) { + warning("too many files, skipping inexact rename detection"); goto cleanup; + } mx = xmalloc(sizeof(*mx) * num_create * num_src); for (dst_cnt = i = 0; i < rename_dst_nr; i++) { -- 1.5.4.3.422.g55194 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html