pack_if_possible_fn(): use ref_type() instead of is_per_worktree_ref()
is_per_worktree_ref() will soon be made private, so use the public interface, ref_type(), in its place. And now that we're using ref_type(), we can make it clear that we won't pack pseudorefs. This was the case before, but due to the not-so-obvious reason that this function is applied to references via the loose reference cache, which only includes references that live inside "refs/". Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Jeff King <peff@peff.net>maint
parent
f4a5721ccb
commit
a935ebd4a7
4
refs.c
4
refs.c
|
|
@ -2671,8 +2671,6 @@ struct pack_refs_cb_data {
|
||||||
struct ref_to_prune *ref_to_prune;
|
struct ref_to_prune *ref_to_prune;
|
||||||
};
|
};
|
||||||
|
|
||||||
static int is_per_worktree_ref(const char *refname);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* An each_ref_entry_fn that is run over loose references only. If
|
* An each_ref_entry_fn that is run over loose references only. If
|
||||||
* the loose reference can be packed, add an entry in the packed ref
|
* the loose reference can be packed, add an entry in the packed ref
|
||||||
|
|
@ -2687,7 +2685,7 @@ static int pack_if_possible_fn(struct ref_entry *entry, void *cb_data)
|
||||||
int is_tag_ref = starts_with(entry->name, "refs/tags/");
|
int is_tag_ref = starts_with(entry->name, "refs/tags/");
|
||||||
|
|
||||||
/* Do not pack per-worktree refs: */
|
/* Do not pack per-worktree refs: */
|
||||||
if (is_per_worktree_ref(entry->name))
|
if (ref_type(entry->name) != REF_TYPE_NORMAL)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
/* ALWAYS pack tags */
|
/* ALWAYS pack tags */
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue