X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=diff.c;h=fca61f32f07fae0fb2e5f83e268ebce293a06ec5;hb=1a41e743c6270a24daca7309ef3d9ef74543d8ae;hp=306bcd9807803f37dd742ff5c479c4875c454e03;hpb=4ae22d96fe9248dac4f26b1fc91154ba5e879799;p=git.git diff --git a/diff.c b/diff.c index 306bcd980..fca61f32f 100644 --- a/diff.c +++ b/diff.c @@ -13,6 +13,8 @@ static const char *diff_opts = "-pu"; static int use_size_cache; +int diff_rename_limit_default = -1; + static char *quote_one(const char *str) { int needlen; @@ -754,13 +756,19 @@ void diff_setup(struct diff_options *options) options->line_termination = '\n'; options->break_opt = -1; options->rename_limit = -1; + + options->change = diff_change; + options->add_remove = diff_addremove; } int diff_setup_done(struct diff_options *options) { - if ((options->find_copies_harder || 0 <= options->rename_limit) && - options->detect_rename != DIFF_DETECT_COPY) + if ((options->find_copies_harder && + options->detect_rename != DIFF_DETECT_COPY) || + (0 <= options->rename_limit && !options->detect_rename)) return -1; + if (options->detect_rename && options->rename_limit < 0) + options->rename_limit = diff_rename_limit_default; if (options->setup & DIFF_SETUP_USE_CACHE) { if (!active_cache) /* read-cache does not die even when it fails