]> git.ipfire.org Git - thirdparty/libsolv.git/commitdiff
- add sat_sort() function
authorMichael Schroeder <mls@suse.de>
Tue, 12 May 2009 10:18:55 +0000 (12:18 +0200)
committerMichael Schroeder <mls@suse.de>
Tue, 12 May 2009 10:18:55 +0000 (12:18 +0200)
src/util.c
src/util.h

index 915dd1b57064ecc9a660085eea45e41011029ac0..d534ba9a6b5270ae6d354a998d6cd1a6ace64fbf 100644 (file)
@@ -5,6 +5,8 @@
  * for further information
  */
 
+#define _GNU_SOURCE
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
@@ -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);
+}
index 7662b62499d85689f6bbfbf7778002fe96f170ca..e578faf45d8255e92ac82b12828c2eccd590c771 100644 (file)
@@ -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)
 {