commit-reach: create repo_is_descendant_of()
The next change will make repo_in_merge_bases() depend on the logic in is_descendant_of(), but we need to make the method independent of the_repository first. Signed-off-by: Derrick Stolee <dstolee@microsoft.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
							parent
							
								
									eebb51ba8c
								
							
						
					
					
						commit
						d91d6fbf26
					
				|  | @ -283,7 +283,9 @@ struct commit_list *repo_get_merge_bases(struct repository *r, | |||
| /* | ||||
|  * Is "commit" a descendant of one of the elements on the "with_commit" list? | ||||
|  */ | ||||
| int is_descendant_of(struct commit *commit, struct commit_list *with_commit) | ||||
| static int repo_is_descendant_of(struct repository *r, | ||||
| 				 struct commit *commit, | ||||
| 				 struct commit_list *with_commit) | ||||
| { | ||||
| 	if (!with_commit) | ||||
| 		return 1; | ||||
|  | @ -301,13 +303,18 @@ int is_descendant_of(struct commit *commit, struct commit_list *with_commit) | |||
|  | ||||
| 			other = with_commit->item; | ||||
| 			with_commit = with_commit->next; | ||||
| 			if (in_merge_bases(other, commit)) | ||||
| 			if (repo_in_merge_bases(r, other, commit)) | ||||
| 				return 1; | ||||
| 		} | ||||
| 		return 0; | ||||
| 	} | ||||
| } | ||||
|  | ||||
| int is_descendant_of(struct commit *commit, struct commit_list *with_commit) | ||||
| { | ||||
| 	return repo_is_descendant_of(the_repository, commit, with_commit); | ||||
| } | ||||
|  | ||||
| /* | ||||
|  * Is "commit" an ancestor of one of the "references"? | ||||
|  */ | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Derrick Stolee
						Derrick Stolee