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:
		@ -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);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user