On Mon, Feb 11, 2008 at 12:20:37PM +0100, Santi Béjar wrote: > Additionally git could warn if the limit is reached in the merge. I think that is reasonable. It feels a little wrong, though, to be spewing user messages from such a deep library-ish function (and those messages will probably be lost for commands with a pager). But something like this? --- 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++) { - 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