Commit b0401c68 by Russell Belfer

Merge pull request #1681 from arthurschreiber/patch-1

Prefer younger merge bases over older ones.
parents d0c36a0b 24ba6d3f
...@@ -36,7 +36,7 @@ git_commit_list *git_commit_list_insert_by_date(git_commit_list_node *item, git_ ...@@ -36,7 +36,7 @@ git_commit_list *git_commit_list_insert_by_date(git_commit_list_node *item, git_
git_commit_list *p; git_commit_list *p;
while ((p = *pp) != NULL) { while ((p = *pp) != NULL) {
if (git_commit_list_time_cmp(p->item, item) < 0) if (git_commit_list_time_cmp(p->item, item) > 0)
break; break;
pp = &p->next; pp = &p->next;
......
...@@ -123,6 +123,18 @@ void test_revwalk_mergebase__no_common_ancestor_returns_ENOTFOUND(void) ...@@ -123,6 +123,18 @@ void test_revwalk_mergebase__no_common_ancestor_returns_ENOTFOUND(void)
cl_assert_equal_sz(4, behind); cl_assert_equal_sz(4, behind);
} }
void test_revwalk_mergebase__prefer_youngest_merge_base(void)
{
git_oid result, one, two, expected;
cl_git_pass(git_oid_fromstr(&one, "a4a7dce85cf63874e984719f4fdd239f5145052f "));
cl_git_pass(git_oid_fromstr(&two, "be3563ae3f795b2b4353bcce3a527ad0a4f7f644"));
cl_git_pass(git_oid_fromstr(&expected, "c47800c7266a2be04c571c04d5a6614691ea99bd"));
cl_git_pass(git_merge_base(&result, _repo, &one, &two));
cl_assert(git_oid_cmp(&result, &expected) == 0);
}
void test_revwalk_mergebase__no_off_by_one_missing(void) void test_revwalk_mergebase__no_off_by_one_missing(void)
{ {
git_oid result, one, two; git_oid result, one, two;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment