Merge branch 'js/merge-base-with-missing-commit'
Make sure failure return from merge_bases_many() is properly caught. * js/merge-base-with-missing-commit: merge-ort/merge-recursive: do report errors in `merge_submodule()` merge-recursive: prepare for `merge_submodule()` to report errors commit-reach(repo_get_merge_bases_many_dirty): pass on errors commit-reach(repo_get_merge_bases_many): pass on "missing commits" errors commit-reach(get_octopus_merge_bases): pass on "missing commits" errors commit-reach(repo_get_merge_bases): pass on "missing commits" errors commit-reach(get_merge_bases_many_0): pass on "missing commits" errors commit-reach(merge_bases_many): pass on "missing commits" errors commit-reach(paint_down_to_common): start reporting errors commit-reach(paint_down_to_common): prepare for handling shallow commits commit-reach(repo_in_merge_bases_many): report missing commits commit-reach(repo_in_merge_bases_many): optionally expect missing commits commit-reach(paint_down_to_common): plug two memory leaks
This commit is contained in:
@ -867,7 +867,8 @@ static int can_fast_forward(struct commit *onto, struct commit *upstream,
|
||||
if (!upstream)
|
||||
goto done;
|
||||
|
||||
merge_bases = repo_get_merge_bases(the_repository, upstream, head);
|
||||
if (repo_get_merge_bases(the_repository, upstream, head, &merge_bases) < 0)
|
||||
exit(128);
|
||||
if (!merge_bases || merge_bases->next)
|
||||
goto done;
|
||||
|
||||
@ -886,8 +887,9 @@ static void fill_branch_base(struct rebase_options *options,
|
||||
{
|
||||
struct commit_list *merge_bases = NULL;
|
||||
|
||||
merge_bases = repo_get_merge_bases(the_repository, options->onto,
|
||||
options->orig_head);
|
||||
if (repo_get_merge_bases(the_repository, options->onto,
|
||||
options->orig_head, &merge_bases) < 0)
|
||||
exit(128);
|
||||
if (!merge_bases || merge_bases->next)
|
||||
oidcpy(branch_base, null_oid());
|
||||
else
|
||||
|
Reference in New Issue
Block a user