aboutsummaryrefslogtreecommitdiff
path: root/builtin/log.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2011-04-28 14:11:43 -0700
committerJunio C Hamano <gitster@pobox.com>2011-04-28 14:11:43 -0700
commit76a89d6d828486f96f42c69ef0cf87bb6b72fef5 (patch)
treee5112817beba1e701d20e88b4d0c5bdf5fe7de0d /builtin/log.c
parent78c6e0f3fa41d697f2e01850b0a361e21095545d (diff)
parentf31027c99cb2ec4eb7ad8d1ebc7f0e20fef4bd1d (diff)
downloadgit-76a89d6d828486f96f42c69ef0cf87bb6b72fef5.tar.gz
git-76a89d6d828486f96f42c69ef0cf87bb6b72fef5.tar.xz
Merge branch 'jc/rename-degrade-cc-to-c'
* jc/rename-degrade-cc-to-c: diffcore-rename: fall back to -C when -C -C busts the rename limit diffcore-rename: record filepair for rename src diffcore-rename: refactor "too many candidates" logic builtin/diff.c: remove duplicated call to diff_result_code()
Diffstat (limited to 'builtin/log.c')
-rw-r--r--builtin/log.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/builtin/log.c b/builtin/log.c
index c6dce9b89..55abe0761 100644
--- a/builtin/log.c
+++ b/builtin/log.c
@@ -256,6 +256,8 @@ static void finish_early_output(struct rev_info *rev)
static int cmd_log_walk(struct rev_info *rev)
{
struct commit *commit;
+ int saved_nrl = 0;
+ int saved_dcctc = 0;
if (rev->early_output)
setup_early_output(rev);
@@ -286,7 +288,14 @@ static int cmd_log_walk(struct rev_info *rev)
}
free_commit_list(commit->parents);
commit->parents = NULL;
+ if (saved_nrl < rev->diffopt.needed_rename_limit)
+ saved_nrl = rev->diffopt.needed_rename_limit;
+ if (rev->diffopt.degraded_cc_to_c)
+ saved_dcctc = 1;
}
+ rev->diffopt.degraded_cc_to_c = saved_dcctc;
+ rev->diffopt.needed_rename_limit = saved_nrl;
+
if (rev->diffopt.output_format & DIFF_FORMAT_CHECKDIFF &&
DIFF_OPT_TST(&rev->diffopt, CHECK_FAILED)) {
return 02;