From: Michael Schroeder Date: Tue, 12 May 2009 10:18:55 +0000 (+0200) Subject: - add sat_sort() function X-Git-Tag: BASE-SuSE-Code-12_1-Branch~290 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8b2723e4eed25ecc3018c9760e9cdf0aade1daf6;p=platform%2Fupstream%2Flibsolv.git - add sat_sort() function --- 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) {