[PATCH v2 03/16] refs: convert remaining users of for_each_ref_in to object_id
From: brian m. carlson <hidden>
Date: 2016-06-15 23:04:31
Subsystem:
the rest · Maintainer:
Linus Torvalds
Remove the temporary for_each_ref_in_oid function and update the users of it. Convert the users of for_each_branch_ref and for_each_remote_ref (which use for_each_ref_in under the hood) as well. Signed-off-by: brian m. carlson <redacted> --- bisect.c | 8 ++++---- builtin/rev-parse.c | 10 +++++----- refs.c | 13 ++++--------- refs.h | 6 +++--- 4 files changed, 16 insertions(+), 21 deletions(-)
diff --git a/bisect.c b/bisect.c
index 10f5e57..03d5cd9 100644
--- 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;
diff --git a/builtin/rev-parse.c b/builtin/rev-parse.c
index 7b70650..c9f2c93 100644
--- a/builtin/rev-parse.c
+++ b/builtin/rev-parse.c@@ -203,9 +203,9 @@ static int show_reference_oid(const char *refname, const struct object_id *oid, return show_reference(refname, oid->hash, flag, cb_data); } -static int anti_reference(const char *refname, const unsigned char *sha1, int flag, void *cb_data) +static int anti_reference(const char *refname, const struct object_id *oid, int flag, void *cb_data) { - show_rev(REVERSED, sha1, refname); + show_rev(REVERSED, oid->hash, refname); return 0; }
@@ -665,7 +665,7 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix) continue; } if (!strcmp(arg, "--bisect")) { - for_each_ref_in("refs/bisect/bad", show_reference, NULL); + for_each_ref_in("refs/bisect/bad", show_reference_oid, NULL); for_each_ref_in("refs/bisect/good", anti_reference, NULL); continue; }
@@ -676,7 +676,7 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix) continue; } if (!strcmp(arg, "--branches")) { - for_each_branch_ref(show_reference, NULL); + for_each_branch_ref(show_reference_oid, NULL); clear_ref_exclusion(&ref_excludes); continue; }
@@ -703,7 +703,7 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix) continue; } if (!strcmp(arg, "--remotes")) { - for_each_remote_ref(show_reference, NULL); + for_each_remote_ref(show_reference_oid, NULL); clear_ref_exclusion(&ref_excludes); continue; }
diff --git a/refs.c b/refs.c
index 95863f2..a81c301 100644
--- a/refs.c
+++ b/refs.c@@ -2019,16 +2019,11 @@ int for_each_ref_submodule(const char *submodule, each_ref_fn fn, void *cb_data) return do_for_each_ref(get_ref_cache(submodule), "", fn, 0, 0, cb_data); } -static int for_each_ref_in_oid(const char *prefix, each_ref_fn_oid fn, void *cb_data) +int for_each_ref_in(const char *prefix, each_ref_fn_oid fn, void *cb_data) { return do_for_each_ref_oid(&ref_cache, prefix, fn, strlen(prefix), 0, cb_data); } -int for_each_ref_in(const char *prefix, each_ref_fn fn, void *cb_data) -{ - return do_for_each_ref(&ref_cache, prefix, fn, strlen(prefix), 0, cb_data); -} - int for_each_ref_in_submodule(const char *submodule, const char *prefix, each_ref_fn fn, void *cb_data) {
@@ -2037,7 +2032,7 @@ int for_each_ref_in_submodule(const char *submodule, const char *prefix, int for_each_tag_ref(each_ref_fn_oid fn, void *cb_data) { - return for_each_ref_in_oid("refs/tags/", fn, cb_data); + return for_each_ref_in("refs/tags/", fn, cb_data); } int for_each_tag_ref_submodule(const char *submodule, each_ref_fn fn, void *cb_data)
@@ -2045,7 +2040,7 @@ int for_each_tag_ref_submodule(const char *submodule, each_ref_fn fn, void *cb_d return for_each_ref_in_submodule(submodule, "refs/tags/", fn, cb_data); } -int for_each_branch_ref(each_ref_fn fn, void *cb_data) +int for_each_branch_ref(each_ref_fn_oid fn, void *cb_data) { return for_each_ref_in("refs/heads/", fn, cb_data); }
@@ -2055,7 +2050,7 @@ int for_each_branch_ref_submodule(const char *submodule, each_ref_fn fn, void *c return for_each_ref_in_submodule(submodule, "refs/heads/", fn, cb_data); } -int for_each_remote_ref(each_ref_fn fn, void *cb_data) +int for_each_remote_ref(each_ref_fn_oid fn, void *cb_data) { return for_each_ref_in("refs/remotes/", fn, cb_data); }
diff --git a/refs.h b/refs.h
index b83529b..d6ef917 100644
--- a/refs.h
+++ b/refs.h@@ -88,10 +88,10 @@ typedef int each_ref_fn_oid(const char *refname, */ extern int head_ref(each_ref_fn, void *); extern int for_each_ref(each_ref_fn, void *); -extern int for_each_ref_in(const char *, each_ref_fn, void *); +extern int for_each_ref_in(const char *, each_ref_fn_oid, void *); extern int for_each_tag_ref(each_ref_fn_oid, void *); -extern int for_each_branch_ref(each_ref_fn, void *); -extern int for_each_remote_ref(each_ref_fn, void *); +extern int for_each_branch_ref(each_ref_fn_oid, void *); +extern int for_each_remote_ref(each_ref_fn_oid, void *); extern int for_each_replace_ref(each_ref_fn, void *); extern int for_each_glob_ref(each_ref_fn, const char *pattern, void *); extern int for_each_glob_ref_in(each_ref_fn, const char *pattern, const char* prefix, void *);
--
2.3.5