mirror of
https://git.proxmox.com/git/libgit2
synced 2025-05-29 12:24:11 +00:00
Fix MSVC compilation warnings
This commit is contained in:
parent
de18f27668
commit
bdcc46111c
13
src/tsort.c
13
src/tsort.c
@ -3,6 +3,9 @@
|
|||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
#ifndef GIT_WIN32
|
||||||
|
#include <common.h>
|
||||||
|
#endif
|
||||||
/**
|
/**
|
||||||
* An array-of-pointers implementation of Python's Timsort
|
* An array-of-pointers implementation of Python's Timsort
|
||||||
* Based on code by Christopher Swenson under the MIT license
|
* Based on code by Christopher Swenson under the MIT license
|
||||||
@ -89,6 +92,8 @@ static int binsearch(void **dst, const void *x, size_t size, cmp_ptr_t cmp)
|
|||||||
static void bisort(void **dst, size_t start, size_t size, cmp_ptr_t cmp)
|
static void bisort(void **dst, size_t start, size_t size, cmp_ptr_t cmp)
|
||||||
{
|
{
|
||||||
size_t i;
|
size_t i;
|
||||||
|
void *x;
|
||||||
|
int location;
|
||||||
|
|
||||||
for (i = start; i < size; i++) {
|
for (i = start; i < size; i++) {
|
||||||
int j;
|
int j;
|
||||||
@ -97,8 +102,8 @@ static void bisort(void **dst, size_t start, size_t size, cmp_ptr_t cmp)
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
/* Else we need to find the right place, shift everything over, and squeeze in */
|
/* Else we need to find the right place, shift everything over, and squeeze in */
|
||||||
void *x = dst[i];
|
x = dst[i];
|
||||||
int location = binsearch(dst, x, i, cmp);
|
location = binsearch(dst, x, i, cmp);
|
||||||
for (j = i - 1; j >= location; j--) {
|
for (j = i - 1; j >= location; j--) {
|
||||||
dst[j + 1] = dst[j];
|
dst[j + 1] = dst[j];
|
||||||
}
|
}
|
||||||
@ -323,7 +328,8 @@ static ssize_t collapse(void **dst, struct tsort_run *stack, ssize_t stack_curr,
|
|||||||
bisort(&dst[curr], len, run, cmp);\
|
bisort(&dst[curr], len, run, cmp);\
|
||||||
len = run;\
|
len = run;\
|
||||||
}\
|
}\
|
||||||
run_stack[stack_curr++] = (struct tsort_run) {curr, len};\
|
run_stack[stack_curr].start = curr;\
|
||||||
|
run_stack[stack_curr++].length = len;\
|
||||||
curr += len;\
|
curr += len;\
|
||||||
if (curr == (ssize_t)size) {\
|
if (curr == (ssize_t)size) {\
|
||||||
/* finish up */ \
|
/* finish up */ \
|
||||||
@ -341,7 +347,6 @@ static ssize_t collapse(void **dst, struct tsort_run *stack, ssize_t stack_curr,
|
|||||||
}\
|
}\
|
||||||
while (0)
|
while (0)
|
||||||
|
|
||||||
|
|
||||||
void git__tsort(void **dst, size_t size, cmp_ptr_t cmp)
|
void git__tsort(void **dst, size_t size, cmp_ptr_t cmp)
|
||||||
{
|
{
|
||||||
struct tsort_store _store, *store = &_store;
|
struct tsort_store _store, *store = &_store;
|
||||||
|
@ -118,7 +118,7 @@ extern int git__fnmatch(const char *pattern, const char *name, int flags);
|
|||||||
} \
|
} \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
extern int git__tsort(void **b, size_t n, int (*cmp)(const void *, const void *));
|
extern void git__tsort(void **dst, size_t size, int (*cmp)(const void *, const void *));
|
||||||
extern void **git__bsearch(const void *key, void **base, size_t nmemb,
|
extern void **git__bsearch(const void *key, void **base, size_t nmemb,
|
||||||
int (*compar)(const void *, const void *));
|
int (*compar)(const void *, const void *));
|
||||||
|
|
||||||
|
@ -75,7 +75,7 @@ END_TEST
|
|||||||
|
|
||||||
static int test_cmp(const void *a, const void *b)
|
static int test_cmp(const void *a, const void *b)
|
||||||
{
|
{
|
||||||
return a - b;
|
return (int)a - (int)b;
|
||||||
}
|
}
|
||||||
|
|
||||||
BEGIN_TEST(vector2, "remove duplicates")
|
BEGIN_TEST(vector2, "remove duplicates")
|
||||||
|
Loading…
Reference in New Issue
Block a user