Skip to content

Commit f56ef54

Browse files
author
Junio C Hamano
committed
diff --stat: make sure to set recursive.
Just like "patch" format always needs recursive, "diffstat" format does not make sense without setting recursive. Signed-off-by: Junio C Hamano <[email protected]>
1 parent 08ddd4f commit f56ef54

File tree

3 files changed

+10
-5
lines changed

3 files changed

+10
-5
lines changed

diff-tree.c

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -117,9 +117,6 @@ int main(int argc, const char **argv)
117117
if (opt->dense_combined_merges)
118118
opt->diffopt.output_format = DIFF_FORMAT_PATCH;
119119

120-
if (opt->diffopt.output_format == DIFF_FORMAT_PATCH)
121-
opt->diffopt.recursive = 1;
122-
123120
diff_tree_setup_paths(get_pathspec(prefix, argv), &opt->diffopt);
124121
diff_setup_done(&opt->diffopt);
125122

diff.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1029,6 +1029,16 @@ int diff_setup_done(struct diff_options *options)
10291029
options->detect_rename != DIFF_DETECT_COPY) ||
10301030
(0 <= options->rename_limit && !options->detect_rename))
10311031
return -1;
1032+
1033+
/*
1034+
* These cases always need recursive; we do not drop caller-supplied
1035+
* recursive bits for other formats here.
1036+
*/
1037+
if ((options->output_format == DIFF_FORMAT_PATCH) ||
1038+
(options->output_format == DIFF_FORMAT_DIFFSTAT) ||
1039+
(options->with_stat))
1040+
options->recursive = 1;
1041+
10321042
if (options->detect_rename && options->rename_limit < 0)
10331043
options->rename_limit = diff_rename_limit_default;
10341044
if (options->setup & DIFF_SETUP_USE_CACHE) {

git.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -344,8 +344,6 @@ static int cmd_log(int argc, const char **argv, char **envp)
344344
opt.ignore_merges = 0;
345345
if (opt.dense_combined_merges)
346346
opt.diffopt.output_format = DIFF_FORMAT_PATCH;
347-
if (opt.diffopt.output_format == DIFF_FORMAT_PATCH)
348-
opt.diffopt.recursive = 1;
349347
if (!full_diff && rev.prune_data)
350348
diff_tree_setup_paths(rev.prune_data, &opt.diffopt);
351349
diff_setup_done(&opt.diffopt);

0 commit comments

Comments
 (0)