зеркало из https://github.com/microsoft/git.git
remote.c: make singular free_ref() public
We provide a free_refs() function to free a list, but there's no easy way for a caller to free a single ref. Let's make our singular free_ref() function public. Since its name is so similar to the list-freeing free_refs(), and because both of those functions have the same signature, it might be easy to accidentally use the wrong one. Let's call the singular version the more verbose "free_one_ref()" to distinguish it. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
259eddde6a
Коммит
1027186fdd
6
remote.c
6
remote.c
|
@ -820,11 +820,11 @@ struct ref *copy_ref_list(const struct ref *ref)
|
|||
return ret;
|
||||
}
|
||||
|
||||
static void free_ref(struct ref *ref)
|
||||
void free_one_ref(struct ref *ref)
|
||||
{
|
||||
if (!ref)
|
||||
return;
|
||||
free_ref(ref->peer_ref);
|
||||
free_one_ref(ref->peer_ref);
|
||||
free(ref->remote_status);
|
||||
free(ref->symref);
|
||||
free(ref);
|
||||
|
@ -835,7 +835,7 @@ void free_refs(struct ref *ref)
|
|||
struct ref *next;
|
||||
while (ref) {
|
||||
next = ref->next;
|
||||
free_ref(ref);
|
||||
free_one_ref(ref);
|
||||
ref = next;
|
||||
}
|
||||
}
|
||||
|
|
4
remote.h
4
remote.h
|
@ -131,8 +131,10 @@ int ref_compare_name(const void *, const void *);
|
|||
int check_ref_type(const struct ref *ref, int flags);
|
||||
|
||||
/*
|
||||
* Frees the entire list and peers of elements.
|
||||
* Free a single ref and its peer, or an entire list of refs and their peers,
|
||||
* respectively.
|
||||
*/
|
||||
void free_one_ref(struct ref *ref);
|
||||
void free_refs(struct ref *ref);
|
||||
|
||||
struct oid_array;
|
||||
|
|
Загрузка…
Ссылка в новой задаче