combined-diff: use diffcore before intersecting paths.
This is needed to make "diff-tree -c -M" to work semi-sensibly. Otherwise rename detection, pickaxe and friends would never be invoked. Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
ee63802422
commit
5b23683251
@ -829,7 +829,7 @@ const char *diff_tree_combined_merge(const unsigned char *sha1,
|
|||||||
struct combine_diff_path *p, *paths = NULL;
|
struct combine_diff_path *p, *paths = NULL;
|
||||||
int num_parent, i, num_paths;
|
int num_parent, i, num_paths;
|
||||||
|
|
||||||
diff_setup(&diffopts);
|
diffopts = *opt;
|
||||||
diffopts.output_format = DIFF_FORMAT_NO_OUTPUT;
|
diffopts.output_format = DIFF_FORMAT_NO_OUTPUT;
|
||||||
diffopts.recursive = 1;
|
diffopts.recursive = 1;
|
||||||
|
|
||||||
@ -846,6 +846,7 @@ const char *diff_tree_combined_merge(const unsigned char *sha1,
|
|||||||
struct commit *parent = parents->item;
|
struct commit *parent = parents->item;
|
||||||
diff_tree_sha1(parent->object.sha1, commit->object.sha1, "",
|
diff_tree_sha1(parent->object.sha1, commit->object.sha1, "",
|
||||||
&diffopts);
|
&diffopts);
|
||||||
|
diffcore_std(&diffopts);
|
||||||
paths = intersect_paths(paths, i, num_parent);
|
paths = intersect_paths(paths, i, num_parent);
|
||||||
diff_flush(&diffopts);
|
diff_flush(&diffopts);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user