refs: add referent to each_ref_fn
Add a parameter to each_ref_fn so that callers to the ref APIs that use this function as a callback can have acess to the unresolved value of a symbolic ref. Signed-off-by: John Cai <johncai86@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
@ -356,6 +356,7 @@ static int check_and_set_terms(struct bisect_terms *terms, const char *cmd)
|
||||
}
|
||||
|
||||
static int inc_nr(const char *refname UNUSED,
|
||||
const char *referent UNUSED,
|
||||
const struct object_id *oid UNUSED,
|
||||
int flag UNUSED, void *cb_data)
|
||||
{
|
||||
@ -545,7 +546,7 @@ finish:
|
||||
return res;
|
||||
}
|
||||
|
||||
static int add_bisect_ref(const char *refname, const struct object_id *oid,
|
||||
static int add_bisect_ref(const char *refname, const char *referent UNUSED, const struct object_id *oid,
|
||||
int flags UNUSED, void *cb)
|
||||
{
|
||||
struct add_bisect_ref_data *data = cb;
|
||||
@ -1162,6 +1163,7 @@ static int bisect_visualize(struct bisect_terms *terms, int argc,
|
||||
}
|
||||
|
||||
static int get_first_good(const char *refname UNUSED,
|
||||
const char *referent UNUSED,
|
||||
const struct object_id *oid,
|
||||
int flag UNUSED, void *cb_data)
|
||||
{
|
||||
|
@ -1045,7 +1045,7 @@ static void update_refs_for_switch(const struct checkout_opts *opts,
|
||||
report_tracking(new_branch_info);
|
||||
}
|
||||
|
||||
static int add_pending_uninteresting_ref(const char *refname,
|
||||
static int add_pending_uninteresting_ref(const char *refname, const char *referent UNUSED,
|
||||
const struct object_id *oid,
|
||||
int flags UNUSED, void *cb_data)
|
||||
{
|
||||
|
@ -149,7 +149,7 @@ static void add_to_known_names(const char *path,
|
||||
}
|
||||
}
|
||||
|
||||
static int get_name(const char *path, const struct object_id *oid,
|
||||
static int get_name(const char *path, const char *referent UNUSED, const struct object_id *oid,
|
||||
int flag UNUSED, void *cb_data UNUSED)
|
||||
{
|
||||
int is_tag = 0;
|
||||
|
@ -286,7 +286,7 @@ static struct refname_hash_entry *refname_hash_add(struct hashmap *map,
|
||||
return ent;
|
||||
}
|
||||
|
||||
static int add_one_refname(const char *refname,
|
||||
static int add_one_refname(const char *refname, const char *referent UNUSED,
|
||||
const struct object_id *oid,
|
||||
int flag UNUSED, void *cbdata)
|
||||
{
|
||||
@ -1464,6 +1464,7 @@ static void set_option(struct transport *transport, const char *name, const char
|
||||
|
||||
|
||||
static int add_oid(const char *refname UNUSED,
|
||||
const char *referent UNUSED,
|
||||
const struct object_id *oid,
|
||||
int flags UNUSED, void *cb_data)
|
||||
{
|
||||
|
@ -521,7 +521,7 @@ static int fsck_handle_reflog(const char *logname, void *cb_data)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int fsck_handle_ref(const char *refname, const struct object_id *oid,
|
||||
static int fsck_handle_ref(const char *refname, const char *referent UNUSED, const struct object_id *oid,
|
||||
int flag UNUSED, void *cb_data UNUSED)
|
||||
{
|
||||
struct object *obj;
|
||||
@ -576,7 +576,7 @@ static void get_default_heads(void)
|
||||
strbuf_worktree_ref(wt, &ref, "HEAD");
|
||||
fsck_head_link(ref.buf, &head_points_at, &head_oid);
|
||||
if (head_points_at && !is_null_oid(&head_oid))
|
||||
fsck_handle_ref(ref.buf, &head_oid, 0, NULL);
|
||||
fsck_handle_ref(ref.buf, NULL, &head_oid, 0, NULL);
|
||||
strbuf_release(&ref);
|
||||
|
||||
if (include_reflogs)
|
||||
|
@ -836,6 +836,7 @@ struct cg_auto_data {
|
||||
};
|
||||
|
||||
static int dfs_on_ref(const char *refname UNUSED,
|
||||
const char *referent UNUSED,
|
||||
const struct object_id *oid,
|
||||
int flags UNUSED,
|
||||
void *cb_data)
|
||||
|
@ -337,7 +337,7 @@ static int cmp_by_tag_and_age(const void *a_, const void *b_)
|
||||
return a->taggerdate != b->taggerdate;
|
||||
}
|
||||
|
||||
static int name_ref(const char *path, const struct object_id *oid,
|
||||
static int name_ref(const char *path, const char *referent UNUSED, const struct object_id *oid,
|
||||
int flags UNUSED, void *cb_data)
|
||||
{
|
||||
struct object *o = parse_object(the_repository, oid);
|
||||
|
@ -771,7 +771,7 @@ static enum write_one_status write_one(struct hashfile *f,
|
||||
return WRITE_ONE_WRITTEN;
|
||||
}
|
||||
|
||||
static int mark_tagged(const char *path UNUSED, const struct object_id *oid,
|
||||
static int mark_tagged(const char *path UNUSED, const char *referent UNUSED, const struct object_id *oid,
|
||||
int flag UNUSED, void *cb_data UNUSED)
|
||||
{
|
||||
struct object_id peeled;
|
||||
@ -3129,7 +3129,7 @@ static void add_tag_chain(const struct object_id *oid)
|
||||
}
|
||||
}
|
||||
|
||||
static int add_ref_tag(const char *tag UNUSED, const struct object_id *oid,
|
||||
static int add_ref_tag(const char *tag UNUSED, const char *referent UNUSED, const struct object_id *oid,
|
||||
int flag UNUSED, void *cb_data UNUSED)
|
||||
{
|
||||
struct object_id peeled;
|
||||
@ -4076,6 +4076,7 @@ static void record_recent_commit(struct commit *commit, void *data UNUSED)
|
||||
}
|
||||
|
||||
static int mark_bitmap_preferred_tip(const char *refname,
|
||||
const char *referent UNUSED,
|
||||
const struct object_id *oid,
|
||||
int flags UNUSED,
|
||||
void *data UNUSED)
|
||||
|
@ -300,7 +300,7 @@ static void show_ref(const char *path, const struct object_id *oid)
|
||||
}
|
||||
}
|
||||
|
||||
static int show_ref_cb(const char *path_full, const struct object_id *oid,
|
||||
static int show_ref_cb(const char *path_full, const char *referent UNUSED, const struct object_id *oid,
|
||||
int flag UNUSED, void *data)
|
||||
{
|
||||
struct oidset *seen = data;
|
||||
|
@ -543,6 +543,7 @@ struct branches_for_remote {
|
||||
};
|
||||
|
||||
static int add_branch_for_removal(const char *refname,
|
||||
const char *referent UNUSED,
|
||||
const struct object_id *oid UNUSED,
|
||||
int flags UNUSED, void *cb_data)
|
||||
{
|
||||
@ -585,7 +586,7 @@ struct rename_info {
|
||||
uint32_t symrefs_nr;
|
||||
};
|
||||
|
||||
static int read_remote_branches(const char *refname,
|
||||
static int read_remote_branches(const char *refname, const char *referent UNUSED,
|
||||
const struct object_id *oid UNUSED,
|
||||
int flags UNUSED, void *cb_data)
|
||||
{
|
||||
@ -971,6 +972,7 @@ static void free_remote_ref_states(struct ref_states *states)
|
||||
}
|
||||
|
||||
static int append_ref_to_tracked_list(const char *refname,
|
||||
const char *referent UNUSED,
|
||||
const struct object_id *oid UNUSED,
|
||||
int flags, void *cb_data)
|
||||
{
|
||||
|
@ -667,6 +667,7 @@ struct midx_snapshot_ref_data {
|
||||
};
|
||||
|
||||
static int midx_snapshot_ref_one(const char *refname UNUSED,
|
||||
const char *referent UNUSED,
|
||||
const struct object_id *oid,
|
||||
int flag UNUSED, void *_data)
|
||||
{
|
||||
|
@ -49,6 +49,7 @@ struct show_data {
|
||||
};
|
||||
|
||||
static int show_reference(const char *refname,
|
||||
const char *referent UNUSED,
|
||||
const struct object_id *oid,
|
||||
int flag UNUSED, void *cb_data)
|
||||
{
|
||||
|
@ -211,7 +211,7 @@ static int show_default(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int show_reference(const char *refname, const struct object_id *oid,
|
||||
static int show_reference(const char *refname, const char *referent UNUSED, const struct object_id *oid,
|
||||
int flag UNUSED, void *cb_data UNUSED)
|
||||
{
|
||||
if (ref_excluded(&ref_excludes, refname))
|
||||
@ -220,7 +220,7 @@ static int show_reference(const char *refname, const struct object_id *oid,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int anti_reference(const char *refname, const struct object_id *oid,
|
||||
static int anti_reference(const char *refname, const char *referent UNUSED, const struct object_id *oid,
|
||||
int flag UNUSED, void *cb_data UNUSED)
|
||||
{
|
||||
show_rev(REVERSED, oid, refname);
|
||||
|
@ -410,7 +410,7 @@ static int append_ref(const char *refname, const struct object_id *oid,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int append_head_ref(const char *refname, const struct object_id *oid,
|
||||
static int append_head_ref(const char *refname, const char *referent UNUSED, const struct object_id *oid,
|
||||
int flag UNUSED, void *cb_data UNUSED)
|
||||
{
|
||||
struct object_id tmp;
|
||||
@ -425,7 +425,7 @@ static int append_head_ref(const char *refname, const struct object_id *oid,
|
||||
return append_ref(refname + ofs, oid, 0);
|
||||
}
|
||||
|
||||
static int append_remote_ref(const char *refname, const struct object_id *oid,
|
||||
static int append_remote_ref(const char *refname, const char *referent UNUSED, const struct object_id *oid,
|
||||
int flag UNUSED, void *cb_data UNUSED)
|
||||
{
|
||||
struct object_id tmp;
|
||||
@ -451,7 +451,7 @@ static int append_tag_ref(const char *refname, const struct object_id *oid,
|
||||
static const char *match_ref_pattern = NULL;
|
||||
static int match_ref_slash = 0;
|
||||
|
||||
static int append_matching_ref(const char *refname, const struct object_id *oid,
|
||||
static int append_matching_ref(const char *refname, const char *referent UNUSED, const struct object_id *oid,
|
||||
int flag, void *cb_data)
|
||||
{
|
||||
/* we want to allow pattern hold/<asterisk> to show all
|
||||
@ -468,7 +468,7 @@ static int append_matching_ref(const char *refname, const struct object_id *oid,
|
||||
if (wildmatch(match_ref_pattern, tail, 0))
|
||||
return 0;
|
||||
if (starts_with(refname, "refs/heads/"))
|
||||
return append_head_ref(refname, oid, flag, cb_data);
|
||||
return append_head_ref(refname, NULL, oid, flag, cb_data);
|
||||
if (starts_with(refname, "refs/tags/"))
|
||||
return append_tag_ref(refname, oid, flag, cb_data);
|
||||
return append_ref(refname, oid, 0);
|
||||
|
@ -63,7 +63,7 @@ struct show_ref_data {
|
||||
int show_head;
|
||||
};
|
||||
|
||||
static int show_ref(const char *refname, const struct object_id *oid,
|
||||
static int show_ref(const char *refname, const char *referent UNUSED, const struct object_id *oid,
|
||||
int flag UNUSED, void *cbdata)
|
||||
{
|
||||
struct show_ref_data *data = cbdata;
|
||||
@ -97,6 +97,7 @@ match:
|
||||
}
|
||||
|
||||
static int add_existing(const char *refname,
|
||||
const char *referent UNUSED,
|
||||
const struct object_id *oid UNUSED,
|
||||
int flag UNUSED, void *cbdata)
|
||||
{
|
||||
|
@ -608,6 +608,7 @@ static void print_status(unsigned int flags, char state, const char *path,
|
||||
}
|
||||
|
||||
static int handle_submodule_head_ref(const char *refname UNUSED,
|
||||
const char *referent UNUSED,
|
||||
const struct object_id *oid,
|
||||
int flags UNUSED,
|
||||
void *cb_data)
|
||||
|
@ -626,6 +626,7 @@ static void print_preparing_worktree_line(int detach,
|
||||
* Returns 0 on failure and non-zero on success.
|
||||
*/
|
||||
static int first_valid_ref(const char *refname UNUSED,
|
||||
const char *referent UNUSED,
|
||||
const struct object_id *oid UNUSED,
|
||||
int flags UNUSED,
|
||||
void *cb_data UNUSED)
|
||||
|
Reference in New Issue
Block a user