bisect: move common bisect functionality to "bisect_common"
So we can easily reuse the code in a later patch. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
parent
280e65cbd8
commit
2ace9727be
24
bisect.c
24
bisect.c
|
@ -532,6 +532,20 @@ static void bisect_rev_setup(struct rev_info *revs, const char *prefix)
|
||||||
revs->limited = 1;
|
revs->limited = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void bisect_common(struct rev_info *revs, const char *prefix,
|
||||||
|
int *reaches, int *all)
|
||||||
|
{
|
||||||
|
bisect_rev_setup(revs, prefix);
|
||||||
|
|
||||||
|
if (prepare_revision_walk(revs))
|
||||||
|
die("revision walk setup failed");
|
||||||
|
if (revs->tree_objects)
|
||||||
|
mark_edges_uninteresting(revs->commits, revs, NULL);
|
||||||
|
|
||||||
|
revs->commits = find_bisection(revs->commits, reaches, all,
|
||||||
|
!!skipped_sha1_nr);
|
||||||
|
}
|
||||||
|
|
||||||
int bisect_next_vars(const char *prefix)
|
int bisect_next_vars(const char *prefix)
|
||||||
{
|
{
|
||||||
struct rev_info revs;
|
struct rev_info revs;
|
||||||
|
@ -542,15 +556,7 @@ int bisect_next_vars(const char *prefix)
|
||||||
info.revs = &revs;
|
info.revs = &revs;
|
||||||
info.bisect_show_flags = BISECT_SHOW_TRIED | BISECT_SHOW_STRINGED;
|
info.bisect_show_flags = BISECT_SHOW_TRIED | BISECT_SHOW_STRINGED;
|
||||||
|
|
||||||
bisect_rev_setup(&revs, prefix);
|
bisect_common(&revs, prefix, &reaches, &all);
|
||||||
|
|
||||||
if (prepare_revision_walk(&revs))
|
|
||||||
die("revision walk setup failed");
|
|
||||||
if (revs.tree_objects)
|
|
||||||
mark_edges_uninteresting(revs.commits, &revs, NULL);
|
|
||||||
|
|
||||||
revs.commits = find_bisection(revs.commits, &reaches, &all,
|
|
||||||
!!skipped_sha1_nr);
|
|
||||||
|
|
||||||
return show_bisect_vars(&info, reaches, all);
|
return show_bisect_vars(&info, reaches, all);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue