зеркало из https://github.com/microsoft/git.git
commit-reach(repo_get_merge_bases_many_dirty): pass on errors
(Actually, this commit is only about passing on "missing commits" errors, but adding that to the commit's title would have made it too long.) The `merge_bases_many()` function was just taught to indicate parsing errors, and now the `repo_get_merge_bases_many_dirty()` function is aware of that, too. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
5317380521
Коммит
caaf1a2942
|
@ -10,10 +10,13 @@
|
|||
|
||||
static int show_merge_base(struct commit **rev, int rev_nr, int show_all)
|
||||
{
|
||||
struct commit_list *result, *r;
|
||||
struct commit_list *result = NULL, *r;
|
||||
|
||||
result = repo_get_merge_bases_many_dirty(the_repository, rev[0],
|
||||
rev_nr - 1, rev + 1);
|
||||
if (repo_get_merge_bases_many_dirty(the_repository, rev[0],
|
||||
rev_nr - 1, rev + 1, &result) < 0) {
|
||||
free_commit_list(result);
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (!result)
|
||||
return 1;
|
||||
|
|
|
@ -470,17 +470,13 @@ int repo_get_merge_bases_many(struct repository *r,
|
|||
return get_merge_bases_many_0(r, one, n, twos, 1, result);
|
||||
}
|
||||
|
||||
struct commit_list *repo_get_merge_bases_many_dirty(struct repository *r,
|
||||
int repo_get_merge_bases_many_dirty(struct repository *r,
|
||||
struct commit *one,
|
||||
int n,
|
||||
struct commit **twos)
|
||||
struct commit **twos,
|
||||
struct commit_list **result)
|
||||
{
|
||||
struct commit_list *result = NULL;
|
||||
if (get_merge_bases_many_0(r, one, n, twos, 0, &result) < 0) {
|
||||
free_commit_list(result);
|
||||
return NULL;
|
||||
}
|
||||
return result;
|
||||
return get_merge_bases_many_0(r, one, n, twos, 0, result);
|
||||
}
|
||||
|
||||
int repo_get_merge_bases(struct repository *r,
|
||||
|
|
|
@ -18,9 +18,10 @@ int repo_get_merge_bases_many(struct repository *r,
|
|||
struct commit **twos,
|
||||
struct commit_list **result);
|
||||
/* To be used only when object flags after this call no longer matter */
|
||||
struct commit_list *repo_get_merge_bases_many_dirty(struct repository *r,
|
||||
int repo_get_merge_bases_many_dirty(struct repository *r,
|
||||
struct commit *one, int n,
|
||||
struct commit **twos);
|
||||
struct commit **twos,
|
||||
struct commit_list **result);
|
||||
|
||||
int get_octopus_merge_bases(struct commit_list *in, struct commit_list **result);
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче