rev-list: pass "revs" to "show_bisect_vars"
authorChristian Couder <chriscool@tuxfamily.org>
Thu, 26 Mar 2009 04:55:41 +0000 (05:55 +0100)
committerJunio C Hamano <gitster@pobox.com>
Mon, 30 Mar 2009 08:22:54 +0000 (01:22 -0700)
instead of using static "revs" data

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
bisect.h
builtin-rev-list.c

index 860a15c9b8de4b82ff5979d7d4afbba922c60732..31c99fe5f4deceb657b50d1fb1f446568c208400 100644 (file)
--- a/bisect.h
+++ b/bisect.h
@@ -5,6 +5,7 @@ extern struct commit_list *find_bisection(struct commit_list *list,
                                          int *reaches, int *all,
                                          int find_all);
 
-extern int show_bisect_vars(int reaches, int all, int show_all);
+extern int show_bisect_vars(struct rev_info *revs, int reaches, int all,
+                           int show_all);
 
 #endif
index c700c34be58e1368f19d00fe811f864517d6acf1..cdb0f9d913b8334bde8f4aebee7c88a8d378c239 100644 (file)
@@ -226,16 +226,16 @@ static int estimate_bisect_steps(int all)
        return (e < 3 * x) ? n : n - 1;
 }
 
-int show_bisect_vars(int reaches, int all, int show_all)
+int show_bisect_vars(struct rev_info *revs, int reaches, int all, int show_all)
 {
        int cnt;
        char hex[41];
 
-       if (!revs.commits)
+       if (!revs->commits)
                return 1;
 
        /*
-        * revs.commits can reach "reaches" commits among
+        * revs->commits can reach "reaches" commits among
         * "all" commits.  If it is good, then there are
         * (all-reaches) commits left to be bisected.
         * On the other hand, if it is bad, then the set
@@ -247,10 +247,10 @@ int show_bisect_vars(int reaches, int all, int show_all)
        if (cnt < reaches)
                cnt = reaches;
 
-       strcpy(hex, sha1_to_hex(revs.commits->item->object.sha1));
+       strcpy(hex, sha1_to_hex(revs->commits->item->object.sha1));
 
        if (show_all) {
-               traverse_commit_list(&revs, show_commit, show_object);
+               traverse_commit_list(revs, show_commit, show_object);
                printf("------\n");
        }
 
@@ -358,7 +358,8 @@ int cmd_rev_list(int argc, const char **argv, const char *prefix)
                revs.commits = find_bisection(revs.commits, &reaches, &all,
                                              bisect_find_all);
                if (bisect_show_vars)
-                       return show_bisect_vars(reaches, all, bisect_find_all);
+                       return show_bisect_vars(&revs, reaches, all,
+                                               bisect_find_all);
        }
 
        traverse_commit_list(&revs,