diff options
author | Junio C Hamano <gitster@pobox.com> | 2011-05-31 12:00:02 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-05-31 12:00:02 -0700 |
commit | b3c89315a33fbded4a8c5d533ca8ddc6087e4c23 (patch) | |
tree | 804bd0c440bcbd6c365460e5d60163b44cd8c200 /builtin/diff-tree.c | |
parent | e596fd295fbb6e7453cd541554ba27ab185f870d (diff) | |
parent | f31027c99cb2ec4eb7ad8d1ebc7f0e20fef4bd1d (diff) | |
download | git-b3c89315a33fbded4a8c5d533ca8ddc6087e4c23.tar.gz git-b3c89315a33fbded4a8c5d533ca8ddc6087e4c23.tar.xz |
Merge branch 'jc/rename-degrade-cc-to-c' into maint
* 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/diff-tree.c')
-rw-r--r-- | builtin/diff-tree.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/builtin/diff-tree.c b/builtin/diff-tree.c index 0d2a3e9fa..be6417d16 100644 --- a/builtin/diff-tree.c +++ b/builtin/diff-tree.c @@ -163,6 +163,9 @@ int cmd_diff_tree(int argc, const char **argv, const char *prefix) } if (read_stdin) { + int saved_nrl = 0; + int saved_dcctc = 0; + if (opt->diffopt.detect_rename) opt->diffopt.setup |= (DIFF_SETUP_USE_SIZE_CACHE | DIFF_SETUP_USE_CACHE); @@ -173,9 +176,16 @@ int cmd_diff_tree(int argc, const char **argv, const char *prefix) fputs(line, stdout); fflush(stdout); } - else + else { diff_tree_stdin(line); + if (saved_nrl < opt->diffopt.needed_rename_limit) + saved_nrl = opt->diffopt.needed_rename_limit; + if (opt->diffopt.degraded_cc_to_c) + saved_dcctc = 1; + } } + opt->diffopt.degraded_cc_to_c = saved_dcctc; + opt->diffopt.needed_rename_limit = saved_nrl; } return diff_result_code(&opt->diffopt, 0); |