Browse Source

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
Christian Couder 16 years ago committed by Junio C Hamano
parent
commit
2ace9727be
  1. 24
      bisect.c

24
bisect.c

@ -532,6 +532,20 @@ static void bisect_rev_setup(struct rev_info *revs, const char *prefix) @@ -532,6 +532,20 @@ static void bisect_rev_setup(struct rev_info *revs, const char *prefix)
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)
{
struct rev_info revs;
@ -542,15 +556,7 @@ int bisect_next_vars(const char *prefix) @@ -542,15 +556,7 @@ int bisect_next_vars(const char *prefix)
info.revs = &revs;
info.bisect_show_flags = BISECT_SHOW_TRIED | BISECT_SHOW_STRINGED;

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);
bisect_common(&revs, prefix, &reaches, &all);

return show_bisect_vars(&info, reaches, all);
}

Loading…
Cancel
Save