Merge branch 'rs/mergesort'
Make our mergesort implementation type-safe. * rs/mergesort: mergesort: remove llist_mergesort() packfile: use DEFINE_LIST_SORT fetch-pack: use DEFINE_LIST_SORT commit: use DEFINE_LIST_SORT blame: use DEFINE_LIST_SORT test-mergesort: use DEFINE_LIST_SORT test-mergesort: use DEFINE_LIST_SORT_DEBUG mergesort: add macros for typed sort of linked lists mergesort: tighten merge loop mergesort: unify ranks loops
This commit is contained in:
22
remote.c
22
remote.c
@ -11,7 +11,6 @@
|
||||
#include "dir.h"
|
||||
#include "tag.h"
|
||||
#include "string-list.h"
|
||||
#include "mergesort.h"
|
||||
#include "strvec.h"
|
||||
#include "commit-reach.h"
|
||||
#include "advice.h"
|
||||
@ -1082,27 +1081,6 @@ void free_refs(struct ref *ref)
|
||||
}
|
||||
}
|
||||
|
||||
int ref_compare_name(const void *va, const void *vb)
|
||||
{
|
||||
const struct ref *a = va, *b = vb;
|
||||
return strcmp(a->name, b->name);
|
||||
}
|
||||
|
||||
static void *ref_list_get_next(const void *a)
|
||||
{
|
||||
return ((const struct ref *)a)->next;
|
||||
}
|
||||
|
||||
static void ref_list_set_next(void *a, void *next)
|
||||
{
|
||||
((struct ref *)a)->next = next;
|
||||
}
|
||||
|
||||
void sort_ref_list(struct ref **l, int (*cmp)(const void *, const void *))
|
||||
{
|
||||
*l = llist_mergesort(*l, ref_list_get_next, ref_list_set_next, cmp);
|
||||
}
|
||||
|
||||
int count_refspec_match(const char *pattern,
|
||||
struct ref *refs,
|
||||
struct ref **matched_ref)
|
||||
|
Reference in New Issue
Block a user