···1515151515161516 diffopts = *opt;
15171517 copy_pathspec(&diffopts.pathspec, &opt->pathspec);
15181518- diffopts.flags.recursive = 1;
15191518 diffopts.flags.allow_external = 0;
15191519+ if (!opt->flags.no_recursive_diff_tree_combined)
15201520+ diffopts.flags.recursive = 1;
1520152115211522 /* find set of paths that everybody touches
15221523 *
+7
diff.h
···127127 unsigned recursive;
128128 unsigned tree_in_recursive;
129129130130+ /*
131131+ * Historically diff_tree_combined() overrides recursive to 1. To
132132+ * suppress this behavior, set the flag below.
133133+ * It has no effect if recursive is already set to 1.
134134+ */
135135+ unsigned no_recursive_diff_tree_combined;
136136+130137 /* Affects the way how a file that is seemingly binary is treated. */
131138 unsigned binary;
132139 unsigned text;