tag.c: implement '--merged' and '--no-merged' options
[gitweb.git] / bisect.c
index 10f5e57ef37873682f2b987e67708fea61cd05f8..7a6498c8e93d872dc8321d2c9d121c39554c2aca 100644 (file)
--- a/bisect.c
+++ b/bisect.c
@@ -400,16 +400,16 @@ struct commit_list *find_bisection(struct commit_list *list,
        return best;
 }
 
-static int register_ref(const char *refname, const unsigned char *sha1,
+static int register_ref(const char *refname, const struct object_id *oid,
                        int flags, void *cb_data)
 {
        if (!strcmp(refname, "bad")) {
                current_bad_oid = xmalloc(sizeof(*current_bad_oid));
-               hashcpy(current_bad_oid->hash, sha1);
+               oidcpy(current_bad_oid, oid);
        } else if (starts_with(refname, "good-")) {
-               sha1_array_append(&good_revs, sha1);
+               sha1_array_append(&good_revs, oid->hash);
        } else if (starts_with(refname, "skip-")) {
-               sha1_array_append(&skipped_revs, sha1);
+               sha1_array_append(&skipped_revs, oid->hash);
        }
 
        return 0;
@@ -420,10 +420,13 @@ static int read_bisect_refs(void)
        return for_each_ref_in("refs/bisect/", register_ref, NULL);
 }
 
+static GIT_PATH_FUNC(git_path_bisect_names, "BISECT_NAMES")
+static GIT_PATH_FUNC(git_path_bisect_expected_rev, "BISECT_EXPECTED_REV")
+
 static void read_bisect_paths(struct argv_array *array)
 {
        struct strbuf str = STRBUF_INIT;
-       const char *filename = git_path("BISECT_NAMES");
+       const char *filename = git_path_bisect_names();
        FILE *fp = fopen(filename, "r");
 
        if (!fp)
@@ -644,7 +647,7 @@ static void exit_if_skipped_commits(struct commit_list *tried,
 
 static int is_expected_rev(const struct object_id *oid)
 {
-       const char *filename = git_path("BISECT_EXPECTED_REV");
+       const char *filename = git_path_bisect_expected_rev();
        struct stat st;
        struct strbuf str = STRBUF_INIT;
        FILE *fp;