Re: [PATCH v3 25/32] diff-merges: let new options enable diff without -p

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Felipe Contreras <felipe.contreras@xxxxxxxxx> writes:

> Sergey Organov wrote:
>> diff --git a/log-tree.c b/log-tree.c
>> index f9385b1dae6f..9f50a81e537e 100644
>> --- a/log-tree.c
>> +++ b/log-tree.c
>> @@ -899,15 +899,21 @@ static int log_tree_diff(struct rev_info *opt, struct commit *commit, struct log
>>  	int showed_log;
>>  	struct commit_list *parents;
>>  	struct object_id *oid;
>> +	int is_merge;
>> +	int all_need_diff = opt->diff || opt->diffopt.flags.exit_with_status;
>>  
>> -	if (!opt->diff && !opt->diffopt.flags.exit_with_status)
>> +	if (!all_need_diff && !opt->merges_need_diff)
>>  		return 0;
>>  
>>  	parse_commit_or_die(commit);
>>  	oid = get_commit_tree_oid(commit);
>>  
>> -	/* Root commit? */
>>  	parents = get_saved_parents(opt, commit);
>> +	is_merge = parents && parents->next;
>> +	if (!is_merge && !all_need_diff)
>> +		return 0;
>> +
>> +	/* Root commit? */
>>  	if (!parents) {
>>  		if (opt->show_root_diff) {
>>  			diff_root_tree_oid(oid, "", &opt->diffopt);
>
> FWIW this logic does make sense to me.

Thanks for reviewing!

-- Sergey



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux