Browse Source

commit-reach.c: allow get_merge_bases_many_0 to handle any repo

Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Stefan Beller 6 years ago committed by Junio C Hamano
parent
commit
f28e87f526
  1. 13
      commit-reach.c

13
commit-reach.c

@ -216,7 +216,8 @@ static int remove_redundant(struct repository *r, struct commit **array, int cnt
return filled; return filled;
} }


static struct commit_list *get_merge_bases_many_0(struct commit *one, static struct commit_list *get_merge_bases_many_0(struct repository *r,
struct commit *one,
int n, int n,
struct commit **twos, struct commit **twos,
int cleanup) int cleanup)
@ -226,7 +227,7 @@ static struct commit_list *get_merge_bases_many_0(struct commit *one,
struct commit_list *result; struct commit_list *result;
int cnt, i; int cnt, i;


result = merge_bases_many(the_repository, one, n, twos); result = merge_bases_many(r, one, n, twos);
for (i = 0; i < n; i++) { for (i = 0; i < n; i++) {
if (one == twos[i]) if (one == twos[i])
return result; return result;
@ -249,7 +250,7 @@ static struct commit_list *get_merge_bases_many_0(struct commit *one,
clear_commit_marks(one, all_flags); clear_commit_marks(one, all_flags);
clear_commit_marks_many(n, twos, all_flags); clear_commit_marks_many(n, twos, all_flags);


cnt = remove_redundant(the_repository, rslt, cnt); cnt = remove_redundant(r, rslt, cnt);
result = NULL; result = NULL;
for (i = 0; i < cnt; i++) for (i = 0; i < cnt; i++)
commit_list_insert_by_date(rslt[i], &result); commit_list_insert_by_date(rslt[i], &result);
@ -261,19 +262,19 @@ struct commit_list *get_merge_bases_many(struct commit *one,
int n, int n,
struct commit **twos) struct commit **twos)
{ {
return get_merge_bases_many_0(one, n, twos, 1); return get_merge_bases_many_0(the_repository, one, n, twos, 1);
} }


struct commit_list *get_merge_bases_many_dirty(struct commit *one, struct commit_list *get_merge_bases_many_dirty(struct commit *one,
int n, int n,
struct commit **twos) struct commit **twos)
{ {
return get_merge_bases_many_0(one, n, twos, 0); return get_merge_bases_many_0(the_repository, one, n, twos, 0);
} }


struct commit_list *get_merge_bases(struct commit *one, struct commit *two) struct commit_list *get_merge_bases(struct commit *one, struct commit *two)
{ {
return get_merge_bases_many_0(one, 1, &two, 1); return get_merge_bases_many_0(the_repository, one, 1, &two, 1);
} }


/* /*

Loading…
Cancel
Save