Fixed for navmesh on FreeBSD. Oatch by sambler, thanks!

This commit is contained in:
Sergey Sharybin 2011-09-10 14:55:14 +00:00
parent 782a7a3677
commit 4e9381bc35
2 changed files with 4 additions and 4 deletions

@ -97,7 +97,7 @@ static int circumCircle(const float xp, const float yp,
#if defined(_MSC_VER)
static int ptcmp(void* up, const void *v1, const void *v2)
#elif defined(__APPLE__)
#elif defined(__APPLE__) || defined(__FreeBSD__)
static int ptcmp(void* up, const void *v1, const void *v2)
#else
static int ptcmp(const void *v1, const void *v2, void* up)
@ -124,7 +124,7 @@ static void delaunay(const int nv, float *verts, rcIntArray& idx, rcIntArray& tr
idx[i] = i;
#if defined(_MSC_VER)
qsort_s(&idx[0], idx.size(), sizeof(int), ptcmp, verts);
#elif defined(__APPLE__)
#elif defined(__APPLE__) || defined(__FreeBSD__)
qsort_r(&idx[0], idx.size(), sizeof(int), verts, ptcmp);
#else
qsort_r(&idx[0], idx.size(), sizeof(int), ptcmp, verts);

@ -280,7 +280,7 @@ struct SortContext
};
#if defined(_MSC_VER)
static int compareByData(void* data, const void * a, const void * b)
#elif defined(__APPLE__)
#elif defined(__APPLE__) || defined(__FreeBSD__)
static int compareByData(void* data, const void * a, const void * b)
#else
static int compareByData(const void * a, const void * b, void* data)
@ -314,7 +314,7 @@ bool buildNavMeshData(const int nverts, const float* verts,
context.trisToFacesMap = trisToFacesMap;
#if defined(_MSC_VER)
qsort_s(trisMapping, ntris, sizeof(int), compareByData, &context);
#elif defined(__APPLE__)
#elif defined(__APPLE__) || defined(__FreeBSD__)
qsort_r(trisMapping, ntris, sizeof(int), &context, compareByData);
#else
qsort_r(trisMapping, ntris, sizeof(int), compareByData, &context);