From 8b2723e4eed25ecc3018c9760e9cdf0aade1daf6 Mon Sep 17 00:00:00 2001 From: Michael Schroeder Date: Tue, 12 May 2009 12:18:55 +0200 Subject: [PATCH] - add sat_sort() function --- src/util.c | 9 +++++++++ src/util.h | 1 + 2 files changed, 10 insertions(+) diff --git a/src/util.c b/src/util.c index 915dd1b..d534ba9 100644 --- a/src/util.c +++ b/src/util.c @@ -5,6 +5,8 @@ * for further information */ +#define _GNU_SOURCE + #include #include #include @@ -96,3 +98,10 @@ sat_timems(unsigned int subtract) return r - subtract; } +/* bsd's qsort_r has different arguments, so we define our + own version in case we need to do some clever mapping */ +void +sat_sort(void *base, size_t nmemb, size_t size, int (*compar)(const void *, const void *, void *), void *compard) +{ + qsort_r(base, nmemb, size, compar, compard); +} diff --git a/src/util.h b/src/util.h index 7662b62..e578faf 100644 --- a/src/util.h +++ b/src/util.h @@ -28,6 +28,7 @@ extern void *sat_realloc2(void *, size_t, size_t); extern void *sat_free(void *); extern void sat_oom(size_t, size_t); extern unsigned int sat_timems(unsigned int subtract); +extern void sat_sort(void *base, size_t nmemb, size_t size, int (*compar)(const void *, const void *, void *), void *compard); static inline void *sat_extend(void *buf, size_t len, size_t nmemb, size_t size, size_t block) { -- 2.7.4